Hacker News new | ask | show | jobs
by jokethrowaway 1886 days ago
Having been in a product org, a consulting org and having done consulting alone, I think:

- The type of work you do is largely the same across all orgs - unless you're a specialist in some advanced field nobody else can do or you can convince someone in power that you know how to do the occasional cool project

- Both can have long useless meetings. Product orgs' meetings will be crap about how the company is awesome and will make zillions or crap about process-but-not-process-cause-we're-agile; consulting orgs' meetings will be all about having 5 muted engineers on reddit while the client comes up with 3 new requirements per minute

- Product orgs can get by doing way less work, if people lazying around and doing the bare minimum or nothing at all upset you, avoid product focused orgs

- I think you can divide consulting orgs roughly in two groups:

   - Doing client work with in-house project management: a nightmare of people trying to squeeze more work out of you until you die

   - Giving engineers to organisations: largely like working in a product org

 - Consulting orgs have the advantage of rotating clients more often, which means you'll have to deal with horrible people for a shorter amount of time (unless the horrible people are inside your consulting org). In product orgs you'll have to deal with them until they leave for somewhere else

 - Consulting on your own is definitely more work & more money but, more importantly, reduces the risk of running into horrible people
3 comments

I was the CTO of an R&D consulting company in Poland, and parent is mostly spot on. I disagree, however, about the way they describe in-house management vs giving engineers to the customer.

The only thing of real value in a software agency is the team. If your programmers get pissed off and move to another company, you are going to have to spend money to hire and onboard someone, and leave money on the table (you need engineers to fulfill your contracts). So, unless an agency's management totally sucks, they will put a lot of effort to keep their personnel happy. This means, for example, having decent project management (and that's kinda natural, as you tend to do a lot of projects). Second, working the engineers to the bone is very much _not_ in the interest of the agency – if you work super hard and burn out, the customer gets all the upside (project delivered), and the agency gets all the downside. So, a decent agency will be good at pushing back when the client tries to abuse their employees.

This is one of the reasons why we strongly preferred managing the work ourselves, and why we stuck to hourly billing (which is super annoying to most of the time, but it aligns the incentives in that regard slightly better than if you bill by the day).

If the agency is doing staff augmentation, the developers are mostly left to fend for themselves. This is problematic, as it makes the devs to (justly) wonder what is the agency doing to deserve their margins.

(Of course, your mileage may vary. Ours was a small shop with very senior people, and we were doing very interesting projects. Working at a huge Indian outsourcing company is going to be a very different experience.)

While this makes sense in theory in my experience these companies end up relying on new grads for a lot of the work until they get wise and leave or burn out. For some reason they treat attrition as a cost of doing business, even though a lot of knowledge leaves when people do.
I have observed that some global consultancies throw lots of low performing grads at projects and bill like crazy. Typically the client pays around 8-12x the employees' rate. I am not exaggerating. I have been involved in the negotiations and bidding process.
Is there some prerequisites to get into consulting alone, e.g. having worked in a consulting org before ? What kind of profile are people expecting ? I have a pretty good tech generalist engineer profile, and I'm considering doing that while working part time on a personal project.
The biggest requirement of solo consulting is being able to get clients on your own. The quality of your clients will directly result in how successful you are. There are several approaches to gaining new clients, but the best ones come from your professional network and your reputation.

Solo consulting is more work than many other positions you can find. If you want to work part time on a personal project you are better off finding a product org with flexible scheduling then solo consulting.

A lot of it is recommendations, networking, knowing the right people.

At the beginning I was very active in the startup community and that meant several small contracts with startups / small companies.

With my network growing (and ageing) with me, I started having contacts in bigger companies, which landed some contracts with FTSE 100 companies.

That translates to more experience which helps you land similar roles.

This is all very accurate