In a short period of time, comparing 5 years to an entire career, I have worked in different environments; I started my career as an internal engineer at a large corporation, then I joined a startup company and lately I ended up doing consulting and I was placed again in a large corporation. Having gone through these commutations, I can clearly see the differences between each environment, the advantages and inconvenient of one to another.
Thus, the motivation for this post; I would like to share some insights from my modest experience, get a valuable feedback, and help those who are starting or just choosing to make a similar transition so they would know what to expect.
First, avoid the comparison trap
Before I go further, I would like to stop at this point. when you start thinking about making a job change, couple of thoughts might go around and come around, these thoughts are usually fulfilled with excitements, motivations and carefulness. But once the transition is done, we start to behave by instinct, and instinct drives us to compare the new situation with the previous one. Falling into this trap can really steal joy from your life…
What you like here is what you will miss there:
Generally speaking, in the game of changing jobs, there is always wins and losses, the things you like about your new job that you couldn’t have in your previous one are in the price of losing some of what you liked previously and vice-versa. The same will still apply if you are moving from a small company to a large one and conversely.
I personally have gone through this for both reasons – job change and environment change – so as a software engineer, I think the following points are to be considered.
- Technology stack and methodologies of work
- Company’s Hierarchy and evolution
- Organization and processes
- Coworkers friendliness and company’s culture
- Company’s business and their selling philosophy
- Role and value as a new employee in the company
- And of course earnings and benefits
What’s good about small companies:
Working in a small company is like being in a family where everybody knows everybody, the advantage of that is that you know what everybody is doing, so you have an eye on how things work from the smallest detail to the head of the business. You’ll be likely having direct communications with VPs, CEOs and even founders. You will be sitting in voice range of HR, finance, strategy, customer service, etc…
Generally, start-ups are small but with big dreams, so you will be working with the future shakers of the world. As the competition is high with the so called “today’s giants”, you as a valuable resource in the company, will be used to do essential work to the success of the company; your work will make impact and you’ll be working daily on something that is customer facing and changes that come from your work affect the product directly. You also might be involved in different projects at the same time since it is very important to do things fast in a small company (time is money).
Finally, I consider that working in a small company is a unique opportunity to learn a lot of things. If you are making big work, you get faster growth, rewards and recognitions.
What’s good about large companies:
Being in a large company is like being a cell in a brain: you represent a small entity of the system with a well known set of tasks; you have few links via which you are allowed to communicate with higher management; any other communication should be made in connection chain following the so called “corporate process”. Inside a brain, billions of cells exist, pretty much like in a large companies where you have a big amount of resources available, up-to-date equipments and expert consultants. in addition to that you have in place best practices on getting things done; from projects, trainings to performance management. These best practices are set to ensure a better software quality.
Finally, It can be very prestigious to work at large companies and it will serve as an added notch on your resume.
What’s the best deal?
Obviously, there are pros and cons in both environments. although I personally recommend working at large companies in the beginning of a career to stretch your fields of knowledge technically, as well as to learn important skills such as project management and the best practices that go with that.
If you feel like your career development is going slow, then it is time to move to a small company; bringing with you the skills that you have developed, you can get a lot of high quality work accomplished quickly which will lead you to take more ownership of projects and also get experience leading teams that you wouldn’t get in larger companies. However it can come at an expense, that’s why it is really a trade off depending on what you want.
Since I recently started consultancy, I will be probably posting soon to let you know if it is a hit or a miss 🙂 .