this post was submitted on 29 Jun 2023
51 points (94.7% liked)

Experienced Devs

3961 readers
5 users here now

A community for discussion amongst professional software developers.

Posts should be relevant to those well into their careers.

For those looking to break into the industry, are hustling for their first job, or have just started their career and are looking for advice, check out:

founded 1 year ago
MODERATORS
 

I'm a mid-level backend dev, ~3 years YOE. I wanted to seriously start thinking about expanding my skillset and learning new stuff / new technologies outside of my daily tasks. But I'm unsure of how to start, how to decide, what would be most helpful to my career, etc. Any advice?

you are viewing a single comment's thread
view the rest of the comments
[–] nevalem@programming.dev 7 points 1 year ago

I'm going on 25+ years and at principal eng/architect level. My take would be to find something, try it, and find if it excites you. There isn't a wrong answer. At worst you'll become a generalist, fluent with more and more until you find a niche in an array of things you're conversant in. At best you'll dive deep into a specific area and become more and more of an expert on a topic.

Right now I'm really into rust, rewriting tons I've done in the past with more experience under my belt, and learning more about web assembly. Running rust in web assembly on any platform including the user's browser without really having to think about distribution targets is something that excites me. I think I can gleam a future that might compete with how revolutionary kubernetes has been, but even if I'm wrong the things I've learned will still hold up.

If the huge array of things overwhelms you, find a problem and try to solve it. Just the act of doing that and heading into that rabbit hole can open up new worlds you never even knew existed, and helps strengthen one of what I would consider the best qualities in good devs: competent independent troubleshooting. The fun I've had trying my hand at bypassing att router restrictions, extracting certificates from roms, architecting my home network with self hosted kubernetes and all the home automation stuff, low level c embedded systems programming for homemade iot sensors... The things you can do with tech is usually always in reach of anyone with some time and an Internet connection.

Also, don't neglect the open source community. Start a project, contribute to someone else's... Probably the biggest leap I took as a dev consisted of a simple change to a large oss project. The mentality, guardrails, rule self imposed on the project we're incredibly impressive to me and I learned so much about the benefits of code quality, good review, automated, well everything, really opened my eyes to what a small team can do given a common goal they are passionate about, something that at times can be missing from enterprises that might have profit as king.

Let us know what you end up at. You never know if you might inspire another dozen people with something that interests you. Good luck!