Ask HN: How to learn software development concepts crucial for senior roles?

Hi HN, I'm working at an early stage startup, and want to learn about concepts and patterns that are crucial for senior roles, like: - Batch Processing - Messaging Queues - Microservices - Design Patterns - Which techniques to apply while working on a task - Properly debugging

Is there any online resource or somewhere I can see this in practice? Or any newsletter, youtube channel that discusses this in detail?

My go to sources are open source repositories where I try to understand the code bases and some PRs. But I feel overwhelmed with the resources.

9 points | by swirly-mcswirl 5 hours ago

7 comments

  • viraptor 47 minutes ago
    There's a few conferences posting quality talks on YouTube. See Goto (https://youtube.com/@goto-) NDC (https://youtube.com/@ndc) GDC (https://youtube.com/@gdconf) Eficode (https://youtube.com/@eficode-oy)
  • gregjor 5 hours ago
    Will Rogers said "Good judgment comes from experience, and a lot of that comes from bad judgment."

    I can't think of any substitute for experience. You can read and study what you call concepts and patterns, just like you can read about baking a cake, but you can't get experience from study. You practice, make mistakes, stretch your abilities every day, and with luck you find good mentors.

    • namaria 2 hours ago
      Yup. Can only beat search after doing search. Goes for the larger societal systems and for the individual as well, because there's no shortcut to search the space of socially acquired knowledge.
  • roetlich 3 hours ago
    Hi Swirly, most youtube videos will not help that much, other than conference talks. I recommend going more slowly, and comfortably reading books. For example "Designing Data-Intensive Applications", based on your interests. Don't read it over a weekend, read it over a couple of months.

    Your focus should also shift a little bit more towards helping others, thinking about where the whole team is going, etc.

    But give it time. As long as you keep learning, you will get there. :)

  • 2rsf 2 hours ago
    Seniority is about breadth and nor depth. While having good knowledge in many areas is important the magic in being a senior is knowing how to put everything together, communication and integration with other teams, bridging the business and technical etc.
    • hcfman 59 minutes ago
      Except that it’s not recognised by corporations anyway. Too expensive.
      • 2rsf 42 minutes ago
        What do you mean? most companies' job leveling matrices have that, and many times this is what differentiate a talented engineer to a senior engineer in practice.
  • seowallet 2 hours ago
    Hi Swirly, As I know, Martin Fowler’s blog is great for deep dives into software design, and newsletters like Software Lead Weekly keep you updated on trends. For hands-on learning, focus on open-source projects or start a side project. Engage in communities like Reddit or Stack Overflow, read books (Clean Code and Design Patterns are the best) and try pair programming to learn from others.
  • JSDevOps 4 hours ago
    You’ve either got it or you haven’t. It’s just the ultimate form of logical thinking.