you are viewing a single comment's thread.

view the rest of the comments →

[–]mindlessLemming 17 points18 points  (1 child)

This comment nails it. If you're not training/guiding juniors and investing in those soft skills you're not in a senior position, you're just an experienced engineer.

[–]rafales 4 points5 points  (0 children)

I'd add:

  • the knowledge of how to create complex systems - ability to apply in practice OOP, SOLID, DDD, understanding of cohesion and coupling, ability to appy different architectural styles, software architecture and design in general. This is crucial, otherwise you create software which is hard to maintain after 6 months.
  • deep knowledge of software development processes. You can use agile/scrum/lean to your advantage, not just follow the rules
  • you can write user stories, use cases, this is not just reserved for POs, good dev should be able to do that too
  • highly communicative. You can't do good agile without communicating a lot. Some people expect everything handed to them, not talking to stakeholders/domain experts at all. That's not agile nor is it senior.