So, we're officially in a recession, and now the question is, "what does a recession mean to me as a brand-new developer?". It's scary stuff. As you can see in this chart, tech stocks are getting hit hard.
This recession has been much different from the Coronavirus crash or the Great Recession of '08. This recession is unique because tech has been hit much harder than other industries. During the Coronavirus crash, tech actually boomed. I believe that 2 primary factors make this crash different.
This is the most important factor in my opinion. Very shortly after Coronavirus tanked the market, the FED stepped in and "printed" money like crazy.
Interest rates were in the gutter. As a result, because money was cheap, both retail and institutional investors threw all that money at tech companies. Tech was doing great, and investors love high-flying tech stocks.
Tech did so well during the Coronavirus because people were stuck at home. There wasn't much else to do aside from having Zoom meetings, watching Tiger King on Netflix, and listening to Spotify.
This time, we have the opposite taking place. People are going back to work which creates a headwind for a lot of tech companies.
Ad revenue from Facebook and Google is tapering off, and people are canceling their Netflix subscriptions as the commodification of online videos proliferates.
Yes, they are. Layoffs.fyi has some great data on this. Anytime there's a market dip, companies take advantage of the opportunity to cull the chaff in their orgs.
Nothing that follows is financial or professional advice, blah blah blah.
Honestly, if you take nothing else away from this article, take away this: you probably don't need to do anything about a market dip. Every industry has ups and downs.
There will be layoffs and pay cuts, but at the end of the day, tech isn't going anywhere. I predict that in 5 years we'll have far more companies employing developers than we do today.
If you're in the process of learning for your first job, quitting is almost certainly a mistake. The average length of a recession according to Forbes is only 10 months (or 17 months if you all the way back to 1854).
It takes most new developers at least 6 months to prepare for their first job, and it can often take a few years. Keep learning, continue improving your skills, and there will be companies that want to hire you.
Learning during a recession is a fantastic option because chances are the market will be much better after you've had the chance to work on your skills.
I know, I know, "easier said than done, thanks for the advice".
Software development isn't easy, no matter what edtech and e-learning advertisements say. Sure, once you have a couple of years of experience, the whole tech job thing is cushy; but here's a reason for that: it's hard work to learn to code.
When the market is doing well and companies are making money hand over fist, they're willing to over-hire and snatch up devs that don't add as much value to the company as others do. When things are tight, less skilled developers are typically the first to go.
This isn't new advice, but if you continue upskilling yourself, you'll simply be more valuable on the market. Again, giving up and getting discouraged about the state of the market is the last thing you want to do.
If anything, take some time to work on open source, take courses, build projects, and learn more about software.
Again, I can't give you personal advice, but here's what I would do in a few different scenarios.
Learning to code? Keep learning. If anything, I would study harder than before because the pressure is a bit higher. I'd keep my day job if I had one and self-teach to save money. I'd use sites like Boot.dev (yes, I'm biased), FreeCodeCamp, and Scrimba.
Have a coding job at a company that's doing well? What are you worried about? Keep doing what you're doing, it's probably working.
Have a coding job at a company that's NOT doing well? Are you likely to be laid off? If so, get ahead of it by preparing your resume, and applying around. I'm not saying you need to immediately jump ship, but it might be a good time to start casually looking.
I was working at a company a few years back, we had an engineering team of about 30 and the total company size was around 100 people. The company was a SAAS in dire straights.
Churn was catching up with the sales cycle and revenue was decreasing month over month. Here's how management handled it.
Because we weren't closing new deals, the first thing to go was the sales and marketing budget. Only the "closers" were kept.
Be aware the video above has some very strong language in case that offends you.
We had lots of fancy tools for our teams. Zoom, Slack, GitHub, AWS, you name it. At this stage in the downturn, we took the time to analyze which tools we really needed, and we cut the rest or reduced our spending.
For example, by spending a few weeks of engineering time, we were able to reduce our AWS cloud bill from roughly $100k/mo to $50k/mo.
Why was the engineering team the last to go? Well, it's because without a product, not only can you not sell new customers, but you can't even retain the ones you have.
SAAS companies are a new beast, and accounting terms get a little funny. In a physical goods business, you have "COGS", which stands for "cost of goods sold".
Cost of goods sold (COGS) refers to the direct costs of producing the goods sold by a company. This amount includes the cost of the materials and labor directly used to create the good. It excludes indirect expenses, such as distribution costs and sales force costs.
-- Investopedia
In SAAS, however, COGS is a little weird. Your hosting and external SAAS integrations are your only true "cost of goods sold". If you're paying for your servers and the tools that make your product run, then you're able to service your customers.
That said, your engineers are the next closest thing. When something happens to the servers, if you don't have engineers that can fix it, then you'll start losing customers right and left.
I suspect that many companies go through a similar cycle when they need to tighten their belts. Engineering is a great department to be in when things get tough because the "cost of goods sold" is non-negotiable.
It's hard to say, companies do unpredictable things. However, here are a couple of things you can think about.
Also published here