12 Timeless Tips for Software Developers

Photo by zhang kaiyv on Unsplash

I’m not a noob at software development. So, it might just be time to share with you what really matters in becoming a great software developer. 

Forget about job titles and years of experience. Here’s the distilled wisdom I’ve gained over the years.

Results Over Experience

When you’re the problem solver, no one cares how many years you’ve logged staring at code (and I wish employers would stop caring too).

Those who claim to have worked 20 years in the field often don’t actually know that much. It’s amazing, but software engineers who aren’t proactive and don’t take on interesting work stay as mid-junior forever. I know this happens (I’m thinking of a specific individual here) and you can prevent this by diving into advanced topics.

Remember what you learn today could be the solution you need tomorrow.

Thoughtful Code

Every line of code you write is a line of code that you’ll need to maintain (and understand) later. Use that awareness to understand the best line of code is the line you haven’t written. When you’re writing complicated tosh, understand, that future you will struggle to understand it.

This will enable you to juggle the long-term impact of your actions on your project.

Knowledge at Your Fingertips

Forget memorizing syntax; focus on where to find the information you need. Please don’t think that AI is the solution to this as you’ll become a professional copy-paster rather than an intelligent software developer

Knowing how to retrieve information and how to apply it is far more valuable than remembering it and vomiting it like yesterday’s stale ramen. Take it from a ramen fan.

Master the Basics

My journey in software development has taught me that strong fundamentals simplify learning new tools. Strong fundamentals mean you can understand code better. Strong fundamentals mean you code fewer bugs.

The common denominator is to master the fundamentals. Oh, and learn to type. Understanding the core of coding deeply means writing cleaner, more effective code, resulting in fewer bugs.

Systems Thinking

Take into account everybody's work and not just your own while making a software product. That’s good advice to avoid being a jerk and also good advice to improve your code.

This is because effective troubleshooting demands a holistic view of the systems involved. Thinking of the whole will help you anticipate and mitigate issues before they become headaches.

Trial Before Error

If you try to solve a problem before asking for help, you’ll ensure that any question you ask is a good one. This applies if you’re working in a team, completing open-source work or risking asking on Stack Overflow.

Want to ask something silly? Use AI for that.

Engage with Existing Code

Chances are, you’ll spend more time modifying existing code than creating new from scratch. Hone your ability to understand and improve upon the work of others. You can also focus on giving great code reviews and learning from others that way.

You don’t need to find out everything yourself.

Rigorous Testing

Imagine what you might be able to do if you embraced TDD. You’d know the behavior of your code before you’ve written a line. You’d be sure your code met that specification. You’d be sure about the quality of your work.

Wouldn’t that be nice?

Requirements to Reality

Transforming a project specification into functional software is a critical skill. Break down requirements into actionable steps and code them into implemented solutions.

Coding is just like the steps to make ramen, really.

Value Community and Mentorship

The right network can offer invaluable perspectives and guidance. Avoid relying solely on online interactions; personal connections can provide deeper insights and more reliable support.

Discover Your Passion

Understand what drives you in programming rather than a corporate-mandated “passion”. Whether it’s the joy of solving puzzles or the satisfaction of building something from scratch, knowing your motivation will help sustain you through the challenges which are sure to come in your career.

Chart Your Own Course

Don’t measure your progress against others, rather try to be the best version of yourself every day. Looking at other developers' LinkedIn profiles makes it look like they’ve had an easy ride. Now, let me tell you that simply isn’t true, everyone has had difficulties and challenges. It’s up to you to find your own way in this hectic life of a software engineer.

Conclusion

Follow my 12 tips and you’ll be an Ace software developer. That and learning the syntax properly in your chosen language, lol.

Previous
Previous

Trash Code. A Candid Take on Keeping the Personal Out-of-Code Reviews

Next
Next

The Introspective Programmer