Advice For Software Engineers

As someone who has been in the industry a long time, twenty years and counting, I’ve seen a lot of things, both good and bad. I’ve been involved in the business-side of the industry, been a hiring manager for over ten years. I’ve mentored a lot of people, and have been mentored by some amazing people. worked on hundreds of projects. These projects range from really small projects to really large-scale projects. I’ve been involved in highly successful projects bringing in hundreds of thousands of dollars, to failed projects too.

I’ve given a lot of advice to engineers over the years. I enjoy giving advice! So I figured I would have a constantly updated place to hold the advice I give people. These pieces of advice are applicable to people still in college, to people with many years experience. I hope you find some gems in here.

  • Ask lots of questions. Don’t feel like they’re dumb questions if it means you learn something.

  • Use your boss/leader as much as you can, that’s what they’re there for. Ask for feedback, give feedback. Ask how you can grow, where to grow. Ask for support.

  • Don’t take things personally, especially when it comes to the work you produce. Remember, it’s not about you.

  • Understand that you won’t ever truly know everything, even when you have 20 years experience. Embrace it. This applies to so many things.

  • Don’t compare yourself to others. Compare yourself to who you were 6-12 months ago. And always strive to be better than your past self.

  • Have goals, but make them reasonable and actionable.

  • Learn the hiring process to understand how to set yourself up for success.
  • Bubble up everything that you do, even if it’s just to your boss/lead. It’ll make them aware of your successes, growth.

  • You will make a mistake, including big ones. The best thing you can do is to own it, and learn from it, and show that you’ve learned from it. Making mistakes if perfectly fine, we all do it. It’s not okay to avoid ownership, or fail to learn from them.

  • Understand what building things truly means, and it’s usually not what people early in their career really thinks. Things like maintainable and legible code is far superior to clever code. And revenue generating code is crucial, even if it’s old and you don’t get a chance to refactor it. All things have a cost. Would it be great to rewrite this old PHP service into something modern? Of course! But at what cost, and what’s the value?

  • Your salary has to be paid somehow. This affects everything that you do. And that also means that everything you do influences everyone around you, including people outside of engineering.

  • Favor smaller PRs over bigger ones. Bigger ones are a huge time sink, and you’ll get less quality feedback.

  • Seek feedback and validation on your ideas early. Don’t wait until your PR is up to get feedback on your ideas. Worst case is your idea doesn’t work with the team and you have to rework a ton of stuff. Save yourself and your team time by validating your vision as soon as you can.

  • Find a good balance of work and life. No one will do this for you. And many companies will try to do what they can to take advantage of you. Only you can stand up for yourself. Learn to do this.

  • Learn how to give and receive feedback in a healthy way. Both situations can be stressful, and emotional. But there are ways to help mitigate that so you can make the best out of feedback. And feedback given and received in a healthy way is really valuable.

  • Network, always, and nurture your network. This is the most valuable way to find new jobs. I’ve gotten 2 jobs where I skipped almost the entire hiring process and just talked to the CEO for 30 minutes then got an offer.

  • Document and journal what you do, ideally at least once a week. This will help you bubble up your successes, help you keep you resume updated. It will also help you fight for a promotion, or a pay raise. It will also help you reflect over time on all that you’ve accomplished in your career. All of that can help you fight against imposter syndrome too.