Today in this video we’re going to be talking
about working at startups versus working at a big company as a software developer. Which should you choose, which makes more
sense? Why would you choose one or the other? What are some of the differences? If you’re just starting out in your career
and you want to make sure that you get on the right foot, watch this video to the end
because I’m going to be talking about that, giving you the pros and cons. I’ve done both of these things. I’ve coached a lot of developers that have
worked for startups, that have worked for big companies, and there’s a huge difference
and it does make a difference in your career, especially depending on what your career goals
are. So stay tuned and we’re going to get to that
in a minute. I’m John from simpleprogrammer.com and on
this channel I teach you what you need to know in order to be a successful software
developer. I teach you the career skills, the soft skills,
everything that you need to know that they don’t teach you in college, that they don’t
teach you anywhere else that’s going to help you to really advance your career. … which should you work at a startup or
should you work at a big company as a software developer? All right, there’s actually three categories
of companies that I commonly talk about and there’s an optional fourth. Okay, there’s a few things to understand about
choosing a company to work with as a software developer. The first one is the small company or the
startup. They’re really going to be very similar in
the fact that you’re going to have to wear a lot of hats. So if you like the idea of getting involved
in marketing, if you like the idea of setting up your own IT infrastructure, of doing a
lot of the other jobs that happen in a business. If you’re entrepreneurial-minded and maybe
you want to start your own business, this is probably a great environment for you, okay. If you like the idea of having a large impact,
this is also a great environment for you because the code that you write is literally, you
might be the only developer or you might be the one of two developers or three developers
on the team and that code is going into production, that code is going to be used, right? You’re going to get to use new technologies,
you’re going to get to create new things and that’s pretty exciting. With that said, some of the down points of
that is that the spotlight will be on you, okay. You’re not going to be able to hide under
your desk. You’re not going to able to take naps at your
desk or hide in your car or are pretend to work hours that you’re not working or surfing
the internet. The pressure is going to be on you. Especially at a startup, a small company,
you’re going to get noticed. You’re not going to be able to blend into
the crowd. Now, I know that most of you don’t want to
do that, but some of you do. Some of you are like, “You know what? I just want to get my fucking paycheck. I don’t really care what happens. I just want to get my paycheck.” If that’s the case, you’re not going to want
to work for a startup because a startup in a small company, you’re going to be highly
visible, okay. If you make mistakes, those are going to become
visible. People are going to know that, right? If you do good though, you’re going to get
rewarded for it potentially. Also, there’s a high risk factor, right? Most startups are going to go under, okay. A lot of startups might pay you in stock options
and things like that. You should always take money instead because
it’s more likely that the startup is going to go down, then the startup is going to go
up, right? You should hedge your bet a little bit by
having a little bit of stock options at least, but you want to make sure that they’re paying
you real money, okay, because that’s really, really important. You could also end up not getting paid at
all. A lot of times when startups go under the
reason why they go under, the first thing that happens is that they miss payroll. That means that they don’t pay you, okay. They don’t have money to pay you. So you could end up working for two weeks,
not get the paycheck, all right? And I’ve seen people that have worked at startups
that have continued to work month after month, and they keep on getting promised that they’re
going to get paid, but they never get paid. And eventually they give up, and the startup
goes under, and they end up working for a couple of months of time that they didn’t
get paid, and that can really wreak havoc on your life. Now the other thing, like I said, is that
with a startup, a small company, you’re going to be able to work on more cutting-edge technology,
okay. That can be a good thing or bad thing. If you’re afraid to learn new things, if you’re
afraid to take a lot of risks and you’re feeling overwhelmed, it’s not a place for you because
there’s going to be a lot of changes happening, a lot of churn, right? You’re going to have to learn. You’re going to be responsible for a lot of
things, whereas in a bigger company you might be able to hide. The second one is the mid-sized company. Now the mid-sized companies is what most companies
are, and for most people that’s probably going to be the best choice because it offers a
mix of both, right? You’re not going to be working on the most
cutting-edge technology. In fact, the mid-sized companies are going
to be the most stable and the most conservative companies. You’re gonna be able to do your job. You’re not going to have to probably wear
a lot of hats. You’re going to probably spend a lot more
time coding than a startup or then a big company because the job there will be primarily to
write this code. You won’t be trying to run other parts of
the business and doing IT. And like in a big company it won’t be so meticulous,
that they have so many developers, that they do so many code reviews that you can’t actually
write code. So a medium-sized company is actually going
to work for a lot of developers, especially if you just really enjoy writing code and
you don’t care so much about making it big in the startup world or working on the biggest
project possible. It’s just a solid company. With a medium-sized company, they’re probably
been around for a long time. They probably have some stability, but there’s
probably a very distinctive company culture, right? When it’s small enough like that where it’s
a medium-sized, usually the leader of the company sets the culture. So there’s probably going to be a very distinctive
culture in which you might fit in with. Maybe you go to a company where it’s all mountain
bikers and you like to mountain bike or they’re all playing some MMO online and you’d like
to play EverQuest or WoW or whatever it is. You can have that kind of comradery where
everything is not on fire all the time like in a startup and you might really enjoy that. Then we have a big company. Now big companies like Googles or Facebooks
or Intels, any of these big companies, your contributions are not going to be significant,
right? Unless you’re at a very, very high level in
that company, for the most part, you’re not going to be able to build a write as much
code as you would think. You’re going to have a lot of meetings, okay. There’s going to be a lot of red tape, a lot
of bureaucracy that you’re gonna have to deal with, a lot of politics. With that said, the good things about that
is that you’re going to be able to work on some pretty cool stuff, okay. At big companies, they do big projects. I remember I’ve worked for HP and Xerox. I’ve worked on major massive printers and
crazy software projects that are just massive that can only happen at a big company. But probably you’re going to be in a very
specialized role. You’re probably not going to get to do a lot
of stuff, okay, a lot of different things like you would in a startup. Now also, you’re probably going to manage
your own time, right? And you’re probably going to be responsible
for yourself. You could get lost in the crowd. When I worked at HP, I know that there were
people that would sleep in their cars and not actually even do any work because no one
was really monitoring them. They could kind of just wander around the
building if they wanted all day and just kind of kill time, and some people did that. So if you really like flying under the radar
and you don’t care about actually getting work done, you just want to get the paycheck,
as much as I advise against that, it’s not a very good career move. A big company is a place to get lost potentially,
and I say potentially because there’s companies like Amazon where they’re fierce, where they’re
monitoring your time, where they’re monitoring your performance and they’re going to cut
you quickly, okay. But maybe somewhere in Microsoft or Google
that might not be the case, it depends. Different times different companies change
the way that they do things. You’re going to have a lot of stability in
a big company, but not as much stability as you would in the medium-sized company, which
is shocking to a lot of developers. The reason why is simple is because big companies
often have cuts. They often cuts, budget cuts or whatever,
and they will completely reorg a lot of times and completely cut a whole bunch of people. So they’re going to have layoffs more likely
than a medium-sized company. A startup is probably the riskiest. A small company, they can go out of business. A medium company is going to be the most stable
because they’ve been around for a long time. There’s a reason why they’re a medium-sized
company, okay. But a large company, they’re going to be volatile. They’re going to have layoffs, right? Every single large company I’ve ever worked
for, the ax has come down and a lot of people have gotten laid off. You could have a very long tenure with a big
company, but it could also be cut short. And someone, just because you’ve been there
for 15 years doesn’t mean that you’re not going to lose the job in the next layoff. A lot of times, they’ll do things like pay
for your education or they’ll have training and education programs that you can enroll
in. I know at HP I took a ton of courses learning
leadership, management skills, and things like that that they paid for, that I got paid
to do that kind of stuff. You have opportunities sometimes for some
of these bigger projects that you wouldn’t have in a smaller or medium-sized company
because they have large budgets. A lot of people talk about, should you work
for a small or medium or large-sized company, but there’s also the difference between working
for a company that is a software company and a company that has software and I think there’s
a big difference there. If you’re working for a company that is a
software company where software is a primary thing that they create, your value as a developer
and that company is going to be much higher. You’re going to be seen in much higher regard
than if you’re working for a company that, let’s say produces automobiles and software
is just part of that they use to produce their automobiles, right? That you’re not actually working on the shipping
software, for example, like a software company. The the difference in those two companies,
you might find more drastic than the difference between the working between a startup, small
company, medium-sized or big company because it’s how you’re going to be treated. It’s how the whole development team is going
to be treated and your ideas and what not. If you’re working for a software company,
your managers are going to understand the software, right? That the company is going to be based on software. If you want to bring in some cutting edge
technology, you’re going to be able to do that probably a lot more likely, that you’re
going to be working on code more likely, you’re going to be highly more highly respected. If you’re working for a company that they
don’t primarily produce software, but they use software, then you’re maintaining some
kind of software system that they have. You’re going to be a little bit of a second
citizen. They’re not going to care about what you want
to do and this cool idea that you have as much likely, right? I’m being very stereotyping here, but this
is in general, holds true. Most developers, I would say you’re going
to be better off working for a software company, especially if you like using new technologies
and whatnot. But you could also get a job just working
for a company where you’re maintaining some software that they have that runs their system,
where they’re not selling that software directly to the end user. It all depends on what you like and what you
consider to be most important in your work environment. All right, guys, that’s all I got for you
today. If you haven’t already clicked that subscribe
button down below and let me know if you have any questions. I will talk to you next time. Take care.


8 Comments

blackblather · July 10, 2019 at 2:14 pm

Thx

Philippe Vaillancourt · July 10, 2019 at 5:06 pm

For the sake of this discussion, how do you define small, medium and big companies?

Kiril Dimitrov · July 10, 2019 at 5:56 pm

Good explanation!

Peter Mortensen · July 11, 2019 at 8:04 am

04:18 What is your definition of a mid-sized company (approximately)? In terms of number of employees, revenue, and other factors (e.g. number of sites).

Peter Mortensen · July 11, 2019 at 8:14 am

Some time posts:
01:18 : Startup/small:
Wear a lot of hats: for example, also do
marketing and set up own IT infrastructure.

Large impact
03:44 : Startup:
Work on more cutting-edge technology, but you should
not be afraid to learn new things.
04:18 : Mid-sized company
05:20 : The culture is already set in a mid-sized company
05:51 : Big company
06:34 : Very specialised work in a big company
07:38 : A big company has LESS job security!
08:27 : Big companies have better training/education
opportunities
08:55 : Software company – whose primary business is software.
Better opportunity to influence your own work (e.g. to
introduce some cutting-edge technology).

The Jobless Coder · September 9, 2019 at 7:08 am

Really wish I had taken my friend's advice at the time to leave after the startup I was working for went a month without paying me. I was stupid and by the time I finally was kicked out it had been 4 months of work without pay. If anyone thinks going 2 weeks without pay is hell try living in one of the most expensive cities on Earth without a proper source of income.

Qronicl · October 8, 2019 at 3:13 am

how do you find startup companies? i just want the exp for now lol

Jon Schofield · October 23, 2019 at 2:58 pm

The red tape and politics in large companies is no joke. I spend way more time with paperwork, approvals, meetings, etc working for one. It can be frustrating because ideally, I'd rather spend most my time developing, but sadly it's just not the way things work. Rarely do you have access to any system past dev (or at best you're very limited, especially in prod). Even being able to see logs can be an ordeal. Which means most unforeseen issues you'll never be able to resolve on your own, even though you may be the person who understands how to fix the problem better than anyone. It feels miraculous at times that any code actually makes it out to production with all the hoops you have to jump through. The sad part is, all those hoops rarely provide much benefit to the end product, and are a reason why big companies sometimes struggle to adapt. Having said all this though, it's still exciting to work for one, as things you develop get used on a mass scale and you learn extremely valuable ways of optimizing your code. Even a single line of inefficient code when it's being called millions of times, can bring a system to it's knees.

Leave a Reply

Your email address will not be published. Required fields are marked *