Learn about personal finance

Dear new developer,

If you have a job, you’re probably making pretty good money. I know when I started I was making a lot more money than I ever had before (it was $42,000 per year, but this was in 1999). Man, it felt good to just buy what I wanted to buy and not worry about it.

But one thing that I did was set up my 401k and contribute to it. It’s better to save to a 401k from age 25 to 35 than from age 35 to 65, thanks to the magic of compound interest. There’s a whole lot of assumptions, but if you contribute $5000/year for each of those years and the rate of return remains the same (BIG assumption) the person who started saving at 25 will have $60,000 more at age 65. So, take advantage of time and put money away.

I am not a finance professional, but you will be well served by getting smart about personal finance. Books I like:

There’s of course a lot of options to read about personal finance online as well. As a good overview, this post talks about ten personal finance lessons for software developers. My favorite point:

[C]onsciously make choices about where time is spent and one of the best things that’ll help you do that is to have a goal.

Personally, I saved as much as I could when I was a new developer, but you may make a different choice. I have a friend who invested in solar companies because it was in line with his values. I have other colleagues who didn’t start investing until they were in their thirties. There are many paths. All I’m recommending is that you make an informed choice.



Potential vs delivery

Dear new developer,

Early in your career you are judged on potential. Frankly, this is because when you are young in your career, you don’t have much of a track record, so there’s not much else to judge you on.

This means that you can take more risks early in your career. You can shift around and explore different niches, whether technology or business size or domain. Each time you shift, you’ll bring over some relevant experience, but you’ll also be high potential and indicate a willingness to learn.

Companies have to train you on their process and their technology stack, and don’t necessarily expect you to ship on day one.

The older you get, however, the less you are judged on your potential, and the more you are judged on your ability to deliver. This is typically done by looking at your past accomplishments, as what you’ve done in the past is treated as a harbinger of the future.

While there still is spin up time (and the bigger the company, the longer the period; I worked at a large software company where people were surprised I shipped code in the first week) there’s an expectation that you slot in and pick things up more quickly when you are a more senior developer.

As you gain more experience, you have more human capital and are expected to deploy that capital on behalf of your employer.

Does that mean that once you’re a senior developer you can’t switch domains, tech stacks or company size? Absolutely not. But it does mean that you’ll have a harder time doing so and you’ll need to convince the hiring managers that your skill sets apply to the new venture. (There’s an entire book about doing this called What Color is Your Parachute.) You can always press the reset button and re-enter as a junior developer, if you can afford it, and if you can convince the hiring manager that you won’t leave the job as soon as you can find another one.

Take risks early.