I interviewed Brian Jenney, an engineer who learned to code at age 30 after leaving behind a difficult past of addiction. Since making the career change, he’s been a Senior Engineer and manager at several companies large and small (e.g. Clorox).
Over the past 3 years, Brian interviewed 500+ developers, so he has deep insights into job seekers’ challenges. Here are his top takeaways and suggestions:
You need a stronger technical foundation
Too many aspiring engineers become framework developers instead of software developers. They fail to understand core programming concepts beyond their preferred framework (e.g. React or Angular). Without a solid technical foundation, you cannot achieve career stability.
You should be able to make educated guesses about how various frameworks or abstractions work. What’s happening behind the scenes when you deploy an application on Vercel? What problem is your framework trying to solve, and what are some of the tradeoffs?
Spend the time to go beyond tutorials and deliberately break systems to truly master a programming language, framework, or application.
Finding time, even when you have none
The most common reason for failure is that we don’t have enough time to dedicate to coding and job-searching. Here’s what you should do:
- Plan out your main task the night before, so you have less decision fatigue when you start working.
- Identify your most productive time of day and protect that time (hint: it’s usually the morning).
- Work in sprints. Humans have short supplies of motivation, so we need to work in “seasons” or sprints. Decompose your problem into something manageable and set a deadline.
Build in public (the right way)
If you don’t have a 4-year CS degree, you need to spend extra time and energy to de-risk yourself as a candidate. The best way to do this is to build in public by sharing your progress and (more importantly) learnings over time. This has 3 benefits:
- A track record of contributions will improve your prospects by showing your persistence.
- Building in public holds you accountable to your goals and helps you communicate more effectively, a key skill for software development.
- Public sharing lets you connect with like-minded people and build a supportive community.
If you’re in doubt about which platform to pick, choose LinkedIn (it’s the dominant professional network, and it’s where recruiters spend most of their time.)
The chicken and egg problem of gaining experience
Career switchers will likely face the classic catch-22: “In order to land a job, you need experience. But to get experience, you need a job.” Here’s how to get past this impasse:
- Seek out freelancing opportunities, which is relatively easier to start, and can lead to valuable connections. Open source is overrated and has a much higher barrier to entry.
- Turn a side project into a legit business. You will be surprised how little software you need to actually sell something on the internet and own your own destiny.
- Finally, be willing to work for “free” as long as you’re getting compensated in other ways, e.g. credibility, referrals, or experience. Set clear deliverables so you’re not exploited.
Finally, remember that career switchers also have unique advantages in the job market. Your past experience will undoubtedly make you a better fit for certain employers. Lean into that.
You can learn more about Brian from his LinkedIn or his free guide about breaking into tech.