DEV Community

Ilona Codes
Ilona Codes

Posted on

As a Software Engineer, do you prefer to work at start-ups or outsourcing agencies or big companies?

I’m sure every software engineer along with their career has this dilemma: "Should I join a startup or a big corporation?" There are many factors for a decision here and everyone has different circumstances and different offers on the table. Each type of company gives us a different set of skills and a different understanding of the software world.

Let's discuss this! 👩‍💻👨‍💻

Please, share your experience and opinions about where you like to work more and why?

You can also find more insights, thoughts, and learnings about the topic in my upcoming newsletter (+bonus networking cheat sheet)

Oldest comments (43)

Collapse
 
hamishdickson profile image
Hamish Dickson

I love startups - they (should) have one common goal that everyone is working towards. A great startup has a varied mix of people from different backgrounds and experiences. You're expected to adapt to the unexpected and get involved in everything

Bigger corps (I'm at one now) are less fun, you may earn more but are generally less productive, pigeon holed into the area of tech you were hired for and the experience is much less fun for me. You also spend a lot of time doing things which aren't really productive: constant meetings, appraisals, meetings and jira. Also meetings.

Spinning this on its head a bit: I really like to work for tech companies. If it's not a tech company then you're just seen as "the person I go to when the printer is broken"

Collapse
 
vinceramces profile image
Vince Ramces Oliveros

Relatable... Ever wondered myself why they blame me for deadlines when they consume my time for a useless meeting just to blackmail others.

90% discussed about their story
10% for nothing.

Collapse
 
ilonacodes profile image
Ilona Codes

What do you mean by “discussed about their story?” What story? And who are they?

Collapse
 
jaymeedwards profile image
Jayme Edwards 🍃💻 • Edited

My experience is a little atypical since I’ve worked with over 20 companies in my career, but I put too much emphasis myself on pay, prestige, or technology at times in the past.

The first few companies I worked at had me staying there a longer time (2-4 years). But once I got into consulting it exposed me to a wider variety of company sizes and industry niches.

Since we only stay at jobs on average 2 years, I would suggest people join whatever company has people you like most (that you can glean from interviews or social media), and is making an impact on the world you believe in.

This may sound like a weird answer but it’s only because (again only my experience) the size of the company has less of a bearing on our ability to grow than I once thought. You can find startups where the things you think you’d like from one just aren’t possible because of the people, and vice versa for enterprises.

Collapse
 
autoferrit profile image
Shawn McElroy

For me to answer this, I have to ignore the fact that of the poorly managed and operated companies I've worked for, more of them have been startups. Beyond that...

I love the feeling 9f working with startups. With larger companies, even if they operate in an "agile" way and youbworknin small teams, startups are more enjoyable for me. You have more of the feeling that what I build can make a difference. Good or bad (yes I dropped a production database once).

You also tend to have a better opportunity to improve and move up when more people are hired. I've also seen a lot of comraderie build in a startup.

Those thi gs can all happen in a larger company, but in my experience it doesn't work as well.

Collapse
 
melissamcewen profile image
Melissa McEwen

I used to wish I had worked at a startup in the beginning of my career. The reason for this was I thought I would have more energy for the hours and pace of startups. But now I'm kind of glad I started my career in more established companies/universities. The project management and process skills come in handy in an environment that doesn't have them or is just putting them into practice.

Startups can also be chaotic and it helps that I also have more self-care skills (regular therapy appointments, physical therapy exercises) so I can remain calm.

Collapse
 
ilonacodes profile image
Ilona Codes

If only everybody learned these self-care and other essential skills at the beginning of their career!

Collapse
 
sandordargo profile image
Sandor Dargo

I work for a big corp, and that's fine. I don't do overtime, but if I had to it would be paid.

On the downside, there are a lot of meetings and bureaucracy in general.

But I don't feel at all pigeonholed into a tech stack. I had two bigger changes in tech stacks during the six years I spent at my current employer, but while I moved from C++ to Java and back to C++, I took up a lot of shell, Python, different messaging queues and various databases.

In a big corp, you have to keep your eyes open and ready to help your teams with better tooling, etc, and you can find plenty of opportunities to widen your stack.

Collapse
 
ilonacodes profile image
Ilona Codes

That sounds quite good!

Collapse
 
j_mplourde profile image
Jean-Michel Plourde

I work for a company that is an outsourcing agency specialising in helping startups build products. It's interestingly challenging. We must keep our stack efficient in order to reduce building cost while being a fully fledged company and having good resources to do our work. We are a 35 people company.

I worked for the government and multinational giants, but it was very boring. They have a lot of money to throw out the window so they don't care that they don't do test or the schedule is blown. They put money. Feels like everyone dreams are crushed and they are just there taking it very relax.

Collapse
 
elmuerte profile image
Michiel Hendriks

I like to create software, I like to explore possibilities, I like to experiment. I want to commit to a product.

Therefor I want to work for a company where the (software) product is the business. I am absolutely no fan of drive-by development, which is quite often the case with consultancy/out-sourcing companies.

I think processes are a perfect way to fail.

I am a proponent of agile software development, and I quite dislike "Agile" processes (which practice Scrum to the letter.) Agile (with a capital A) is a curse word, and not a good one. This could mean I prefer start-ups above big companies. But this is not true. There are plenty big companies who have a better agile software development approach than start-ups. Often start-ups run in cowboy mode, shooting from the hip, considering quality as an afterthought. (We will deal with in the future, when its needed.) Big companies can kill innovation by trying to force quality via procedures (which does not work).

Collapse
 
tfutada profile image
Takashi Futada

Engineers should not work for outsourcing agencies. If you are still young and motivated, definitely you should work for startups. In fact, most of devs in Japan work for outsourcing agencies or agencies of agencies of agencies, which suck salary, after all IT industry in Japan is way behind US and China. Actually I am a digital nomad, who don't work for companies but for myself. Anyway engineers should not work for money but enjoy tech, writing codes...

Collapse
 
ilonacodes profile image
Ilona Codes

What is different for you from working for these companies when you work for yourself?

Collapse
 
tfutada profile image
Takashi Futada • Edited

Steve Jobs said 'Don't waste it living someone else's life. Don't be trapped by dogma, which is living with the results of other people's thinking. And most important, have the courage to follow your heart and intuition. In my own words, go for Vue.js, TypeScript, whatever you like even if your boss want to stick to jQuery ;-)

Collapse
 
steelwolf180 profile image
Max Ong Zong Bao

I'm more inclined to be part of a startup.

As I don't really do well in a bureaucratic organisation due to prior experience in the military as a conscript.

I think one key thing of being in a startup.

It is exposing you to a wide array of different situations to accelerate your rate of learning and preparing you on a journey to be a entrepreneur or a freelancer.

Collapse
 
manindu profile image
Manindu Wijewickrama

I enjoy working for startups. That's what I've been doing since the beginning of my career. There are a few reasons why I prefer startups.

I think working for a startup allows you take more responsibilities as an engineer. This can be very important if you're in the early days of your career. You get the opportunity to make a bigger impact. You get to experiment a lot. And also you will learn how to look at things from a business perspective ,because you get to work with sales, marketing and other business people closely. I believe having this business sense can add a lot of value to your profile.

Collapse
 
stromtrooperdev profile image
Stormtrooper Developer • Edited

My take.

Startup Company:
Growth: 80-90% of the time you get to choose on what tech stack you can use, but not required to do unit testing.
Money: 80-90% it's hard to save up some money.

Outsourcing Company
Growth: 50-60% of the time you get to choose on what tech stack you can use. Uniti testing is not required sometimes.
Money: 50-60% it's okay.

Big Company:
Growth: Rarely you get to choose the technology you’d like to use. Unit testing is a must.
Money: 60-70% of the time it is better than a startup and outsourcing

Let’s add this in the choices
Freelancer or your own company:
Growth: 100% of the time, you get to choose what tools to use. You decide whether to do unit tests or not.
Money: Your worth depends on how you convince your clients.

Which is better? Depends on the startup or company you choose. There are startup companies that also pay way better than average outsourcing or other companies.

I’m in an outsourcing company right now. Although I don’t code a lot like I used to do when I was in startups, my company allows me to go to international events or conferences to speak.

ADVICE:
Find someone who pays you better and helps you grow faster. Leave the companies that don’t do that to you.

"And," learn new libraries or frameworks and apply them on personal side projects, so you don't get bored!

Collapse
 
ilonacodes profile image
Ilona Codes

It’s an awesome take if the person has exactly these values at the top of the list: Growth and Money.

Sometimes people might have other items, depending on where they are in their life :)

Collapse
 
fida1989 profile image
Fida Muntaseer

Big companies offer a stable but fixed (limited technology/project) job. On the other hand Startups offer a workplace to tinker with different technologies and projects but there is also a lot of stress and job insecurity unless they have a good amount of funding.

Collapse
 
ilonacodes profile image
Ilona Codes

I wonder why bigger organizations offer such fixed jobs. Is there a way to get into a more interesting position for a software developer during the hiring process, that allows for a less fixed job in terms of tech/project?

Collapse
 
imaadhrizni profile image
Imaadh Rizni

A personal opinion is that if you're staring your career and are able to invest a few more hours apart from your 9-5, a focused startup is a great place to be. Reason being you get thrown in the deep end quite often and learn to grow. Room for error is comparatively larger than the big corporates. A few years of thrashing around and then moving to a bigger corporate will definitely help you.

P.S.:Learning transferable skills and getting yourself involved in the solutions aspect of building software will be easier in startups as you get direct access to higher management who may even involve you in the process.

Collapse
 
martin profile image
Martin Beentjes

I want to work at a company where there is a lean mind. I want to be able to take responsibility with the team I am working in. The business should give us the solutions we need to implement, we as a team should thinking about a problem the business is having and together we have to come to a solution.

Even though I work at a big company, I feel like I am working in a startup, so I am really glad I am working where I am working. And that is the most important thing.

Collapse
 
ilonacodes profile image
Ilona Codes

I agree. The concepts of Lean (and Lean Startup) are very important for any business developing a software product (and not only). Even the smallest startups are grinding to a halt if they are not Lean very quickly, and it’s very tough to work at these mentally.

Collapse
 
samyateia profile image
Samy Ateia

I like a mixture, working as a freelancer for big cooperations while doing smaller projects for startups. You get the dynamic motivated environment in startups with insecurities and risks and the calm and detail oriented atmosphere from corporations with financial stability. Never work for intermediaries, it sucks and they rip you off. Try to be as close to the end customer as possible.

Tldr: just become a freelancer in this market.