Hacker News new | ask | show | jobs
by acjacobson 1886 days ago
I have done both and I currently work in a consulting company like the one you describe, but in product as opposed to engineering. Like all jobs it has pros and cons. The big advantages to consulting are the opportunities to work on a lot of different projects and in different fields. You'll get much more exposure than working for a product company where you'll have a singular focus for years. I've been in consulting for two and a half years and have worked with insurance, automotive, grocery, and retail marketplace companies doing web, mobile, b2b and b2c products. That's a lot of variety for that time period. And as others have mentioned your network grows much faster as every new project means a whole new set of people to meet. Consulting can be a great way to 'trial' certain sectors without taking a dedicated job there. I now know much more about where I don't want to work in the future as much as I do because of that experience.

As for disadvantages there are several. Your main concern is the first one and it is real. You can only spend so much time on a project, and that means you may never get to take it to the depth and maturity that you want. In most cases you're there to start something or fix something. Once it is started the client will take over, and if it is fixed, it's fixed. So if you want to go deep into a subject, I would pick a different path. It can be a bit sad to put your heart into something for a year and then not be able to see it all the way through. The other disadvantage is around the politics of the kind of work. This is a three party system - there are your goals, the goals of your company and it's consulting business, and the goals of the client. Those don't always align and it can be complicated to navigate. You can also find yourself in situations that are uncomfortable - like dropped into a project timeline that you weren't part of estimating. It can be a bit sink or swim in my experience. The most important factor in being successful is communication / stakeholder management and making sure expectations are clear to everyone.

It's given me a lot of experience quickly, but it's a real challenge. It is fast-paced and intense and thus it is not for everyone - but if you're thinking about it it is probably worth doing for a few years to get the experience and see how you like it.