/
๐Ÿ“

Things I've learned as a Senior Engineer

https://old.reddit.com/r/ExperiencedDevs/comments/nmodyl/drunk_post_things_ive_learned_as_a_sr_engineer/
experienceprogrammingpersonal-growth
  1. The best way I've advanced my career is by changing companies.
  2. Technology stacks don't really matter because all fields have about 10-20 core principles and the tech stack is just trying to make those things easier, so don't fret over it.
  3. Tech stack matters. If you hear Python dev vs C++ dev, you think very different things, right? That's because certain tools are really good at certain jobs.
  4. If you're not sure what you want to do, just do Java. It's a shitty programming language that's good at almost everything.
  5. I've made some good, lifelong friends at companies I've worked with. I've been perfectly happy working at places where I didn't form friendships with my coworkers and I've been unhappy at places where I made some great friends.
  6. I've learned to be honest with my manager. Not too honest, but honest enough where I can be authentic at work. What's the worse that can happen? He fire me? I'll just pick up a new job in 2 weeks.
  7. Qualities of a good manager share a lot of qualities of a good engineer.
  8. Good code is code that can be understood by a junior engineer. Great code can be understood by a first year CS freshman. The best code is no code at all.
  9. The most underrated skill to learn as an engineer is how to document.
  10. Writing good proposals for changes is a great skill.
  11. If I ever find myself thinking I'm the smartest person in the room, it's time to leave.
  12. Almost every holy war out there (vim vs emacs, mac vs linux, whatever) doesn't matter.
  13. We should hire more interns, they're awesome. Those energetic little fucks with their ideas. Even better when they can question or criticize something. I love interns.
  14. Tests are important but TDD is a damn cult.
  15. Options are worthless or can make you a millionaire. They're probably worthless unless the headcount of engineering is more than 100. Then maybe they are worth something within this decade.
  16. Titles mostly don't matter. Principal Distinguished Staff Lead Engineer from Whatever Company,
  17. Be kind to everyone. Not because it'll help your career (it will), but because being kind is rewarding by itself.
  18. You know what the best part of being a software engineer is? You can meet and talk to people who think like you. Not necessarily the same interests. But they think about problems the same way you think of them. That's pretty cool.
  19. Being a good engineer means knowing best practices. Being a senior engineer means knowing when to break best practices.
  20. The best leaders I've been privileged to work under did their best to both advocate for my opinions and also explain to me other opinions 'that conflict with mine. I'm working hard to be like them.
  21. If people are trying to assign blame to a bug or outage, it's time to move on.
  22. Algorithms and data strictures are important--to a point. I don't see pharmacist interviews test trivia about organic chemistry. There's something fucked with our industry's interview process.
  23. The closer I am to the product, the closer I am to driving revenue, the more I feel valued regardless of how technical my work is. This has been true for even the most progressive companies.
  24. People die. Do you want your code to be your legacy? If yes, then spend a lot of time on it because that's your fucking legacy and you go! But if you are like me, your legacy is surrounded with family, friends, and people in your life and not the code you write. So don't get too hung up on it.
  25. I'm making pretty good money. Be grateful and appreciate. Also, save.
  26. The proudest accomplishment of my career has been helping other people be better at their jobs.
Edit this page
logo
Code-related notes and snippets