7 Lessons From My First Year As a Developer

A few months ago marked my first year as a professional software developer after switching careers. I've learned more than I can remember, but seven things stick out. My hope is that at least one of them proves useful for your own journey as a developer.

1. Take Notes

Everyone forgets things. Create a note system and start writing down everything. Meeting notes, helpful resources, advice from managers, how you solved a problem, etc. You'll be the hero your team needs, and also have seeds for future content creation!

What do I use for notes? Well, at the moment I'm using Roam. But it does seem like I get easily distracted by shiny new toys as I've experimented with at least a dozen other note apps by now. So far Roam seems to be exactly what I need to store my ideas.

Want to explore your options? Here is a great article by Ness Labs on choosing the right note-taking app.

2. Know the WHY

Don't copy-paste code without understanding why the code does what it does. It may solve your problem at the moment, but you'll still have the same gap in knowledge moving forward. You don't want massive technical knowledge debt 5 years down the road!

3. Speak Up for Yourself

This is a biggie for your career. No one knows what you need except for you - so don't expect your managers to read your brain. Need more support? Ask for it. Need a raise to cover growing expenses? Ask for it. Have a dream role in mind? Ask for it!

A great opportunity for you to speak up for yourself is at 1:1s with your manager. If you need some ideas for what to talk about, here's a fantastic graphic by Julia Evans.

4. Mentor Others

You don't have to wait until you're mid-level to start teaching and nurturing others. Others who are a notch or two below your level will benefit from your knowledge. Not only that, but teaching is a great way to reinforce your existing skills.

5. Ask Questions

Don't be the dev who asks questions every 5 minutes without having Googled beforehand. But also don't be the dev who holds up a feature because they were stuck on a problem and waited 2 days to ask for help. There are no silly questions!

Learn from freeCodeCamp on how to ask great questions that will get you the solutions you need.

6. Have a Hobby

No matter how much coffee you've had, your brain isn't meant to code 24/7. Give your mind rest and space to be creative by doing other activities you enjoy. Otherwise, risk burnout. Besides, having other interests can make you more fun to work with.

7. Don't Take Things Personally

You are not your code. Learn to view it as temporary. As part of a team, you'll see it change over time for reasons that have nothing to do with your abilities - the codebase grows, business requirements change, code reviews happen, etc.

Closing Thoughts

I hope this was a helpful read!

So, what about you? Do you have any wisdom you'd like to share? Leave a comment below! 👇

Tapas Adhikary's photo

James Tucker, Thanks for sharing. This is cool. Especially point # 5 and #7, help one to grow.

A Couple of things that I learned(not from my first year though, after a few years),

  • Value for time. Cutting down on unnecessary tasks helps to get time in personal life.
  • Building a circle with like-minded folks. Most of them are dear friends too 😃.
James Tucker's photo

Thanks for sharing your insights, Tapas Adhikary. The last one is so important to remember - in the end, the most important things are relationships and people. Sometimes it's easy to lose sight of that when working in tech/trying to advance a career.

Kathryn Brown's photo

Thanks for the insights! The ones that hit hardest for me are notetaking and mentoring others. Teaching others really is the best way to learn. My question to you is: did you have a mentor when you started out? If so, how did you select and approach them, or did they select you?

James Tucker's photo

I didn't have one when I first started - I was (and still am) at a startup as the lone dev besides the CTO. It was pretty brutal, to be honest. About a year in, we hired some more experienced/senior devs, and one of them has sorta taken me under his wings. Didn't even ask him to. I'm starting to realize that if you make it obvious and public that you're:

  • keen on learning
  • you're humble
  • you'll run away with any feedback you're given

someone will often notice and want to mentor you. But if this doesn't happen, another thing you can do is find someone at a meetup and ask if they'd like to get together and talk about their experience.

Kathryn Brown's photo

James Tucker Glad you found someone who's interested in helping! I tend most often to find myself in the mentor position rather than mentee, but will take your advice to heart and try to be more vocal about wanting to learn from others. Thank you!

Dinys Monvoisin's photo

How do you write your notes, I often struggle to keep it clean?

James Tucker's photo

Hi Dinys Monvoisin, great question. For the longest time, I too have struggled to keep my notes clean.

I recently started organizing my notes and thoughts in a similar fashion to what Nat Eliason does here. If you want a free alternative to Roam, Obsidian is a great choice.

I'm sure you could also follow a similar note system structure using tools like Notion as well.

Dinys Monvoisin's photo

I will have a try and update you how it goes.

Marko Denic's photo

Thanks James.