ProgrammingJavascriptCareerProductivityGadgetsASP.NETWeb Design

When to leave your cozy programming job to work for a startup

Written by
Published on
Filed under
When to leave your cozy programming job to work for a startup

You've seen the videos online and the news articles about the digital nomad life working for a small startup in the city of your dreams. They drink fancy coffee, talk about changing the world and win awards at various startup conferences. And you want in. Except you already have a programming job that pays you pretty well, gives you benefits and let's you walk into the office at 12pm on most days. What is a developer to do.

This is a fork in the road that many developers will end up facing during their stints as programmers and from what I've seen, most will choose to stay put and play it safe. And kudos to them, as it might be the most logical choice. But there are the rare few that will drop everything they have going on and that will take the next flight to 'insert city here'.

If you're undecided about this scenario yourself, then here are a few points to think about. As someone who was a professional programmer for over a decade and then decided to leave it all behind for the startup world, I can say that it can definitely be worth it, but only if you play your cards right.

Have a safety net

Startup's are notoriously difficult to scale and make profitable and when you see one that's hiring it's usually a sign that they have raised some capital and only bought themselves a few months to figure things out. And that means that you might find yourself with a pay cut at some point in time, or even worse, going with no pay if things get really bad.

So save up. If you really want to join the startup world, it will be waiting for you when you're prepared. New companies spring up on the daily these days and they tend to stick around for at least 1-2 years on average.

Just how much you should save really depends on your particular living situation and cost of daily life in your particular city. I personally had a good 6 months of savings stocked away when I left my last corporate job. That means that if I were to find myself at $0 cash flow, I would at least have a solid 6 months to figure out my next move.

Most startups also can't afford to give their employees benefits of any kind, at least not in the early stages. Instead, they tend to compensate by giving employees various stock options. And that is something that you will have to take into account. If you have any health related bills during the course of that year, you will need to finance most of it yourself more than likely.

It also means that you probably won't get any actual days off. Startups typically promote that they have "unlimited days off", but the reality is that most people would be too nervous about getting let go if they took any time off in the beginning. Typically companies that offer that perk and that actually make use of it are financially well-off and have a small team where everyone trusts each other.

Have the skillsets

Your corporate job that you just left has one thing going for it that startups don't. A foundation. The repos are configured and stable, the code is secured and maintained and the servers are paid for and constantly monitored by a team of system admins.

If you are looking to join a small-scale startup that is less than a year old, there's a high chance that they have none of those things. Because those things take time, money and many people in order to implement.

You, in a sense, are the person who will need to create and configure repos, write scalable and reusable code and to find the most cost-effective servers and databases to use. And if you've never done any of those things, but you know React pretty well, you are going to struggle daily in your new startup position.

Most startups begin with a single line of code and a free code repo on the internet. The first few months are typically spent just working on the code in order to get to the MVP phase. Most developers would find this to be the "fun" stage. But real companies typically have certain guidelines that they have to abide by to be compliant.

The majority of startups essentially are software applications or websites with a financial model attached. That could mean that you will need to implement some kind of payment gateway, which might require higher security elevations. But startups change often and it wouldn't be out of the question to imagine a company burning through 3 or 4 payment gateways until they find the right one.

Want to elevate your career

There is only so much room for climbing the corporate ladder when you're a developer. You might find yourself at peak "Senior Programmer" 6 years in to your career and then again with the same title at year 12. If you're a programmer for an established company, odds are you won't be battling for Director of Technology anytime soon.

Not that it doesn't happen. But typically director, VP and C-level jobs are hired and not promoted from within. You might find yourself as a manager however, but you get the idea. There is a subtle cap when it comes to your career growth in a traditional corporate structure.

This applies only to those developers that actually want to reach C-level ranks at some point before they turn 50. And startups are a great way to fast path that entire process, because again, most startups can't afford to hire a VP of tech from a billion dollar company. And most VP's of Tech's out there, probably have stable jobs that pay them well and that they wouldn't trade away for a 2-month old company.

But a developer who helps to scale a company into a 7 or 8 figure entity will definitely have earned a much higher title in a much shorter window of time. And that title can definitely follow them around years after they have completed their tenure at a startup.

Been there, done that

If you do anything long enough, eventually the challenge is all but gone and what remains is repetitive and dare I say, boring. And that holds true for programming as well. There are only so many React components, landing pages and site redesigns that a developer can build before they burn out.

That's where I found myself years ago when I decided to venture into the startup world. I was maintaining both legacy code that was decades old and working on newer frameworks side by side, but both seemed to offer no new challenge. At least not in a corporate setting. In a corporate settings things take time to complete. Everything requires multiple meetings and features are added/removed last minute based on client requests. And applications are stable and require little work in the innovation department.

And that gets old eventually. The startup world is different, because you are typically hired as the expert in your field, meaning that you have way more say in how projects are built and managed. You help to steer the ship with every line of code that you write. And that can both be very stressful, but also very fulfilling at the same time.

In conclusion

When I left my corporate job for the last time in order to venture into the startup world, I didn't really consider any item on this list. I assumed that everything would work out just fine and that I'd have a stable paycheck for years to come. I didn't consider my title in any way and I underestimated how challenging it would be to build a brand from the bottom up with zero architecture.

It's been some years since that fateful day, and I can safely say that now I run through this list each time that I decide to work for a startup and it has made a huge difference in both quality of life and quality of work.

Walter Guevara is a software engineer, startup founder and currently teaches programming for a coding bootcamp. He is currently building things that don't yet exist.


No messages posted yet

Developer Poll


Stay up to date

Sign up for my FREE newsletter. Get informed of the latest happenings in the programming world.

Add a comment

Keep me up to date on the latest programming news
Add Comment

Stay up to date

Get informed of the latest happenings in the programming world.

No thanks