Iโm passionate that we grow the next generation of software architects. Brian Chambers and I have been discussing types of skills needed and came across a blog by Matt Shealy. Software architecture a high-demand role that blends engineering and business leadership.
๐ ๐๐ฎ๐ฟ๐ฑ ๐๐ธ๐ถ๐น๐น๐
- Diagramming complex architectures (e.g., C4 Modeling, UML, SysML)
- Deep knowledge of programming languages (Java, JavaScript, Python, Ruby, Rust, Go, C, COBOL)
- Agile and collaborative software development practices, including DevOps expertise
๐ ๐ฆ๐ผ๐ณ๐ ๐๐ธ๐ถ๐น๐น๐
- Clear communication of mission and expectations
- Coaching & inspiration to help team members achieve goals
- Problem-solving & conflict resolution for both technical and human issues
- Creative thinking to overcome obstacles
- Negotiation
๐ช๐ต๐ฒ๐ฟ๐ฒ ๐๐ผ ๐๐๐ฎ๐ฟ๐ ๐ถ๐ณ ๐๐ผ๐ ๐๐ฎ๐ป๐ ๐๐ผ ๐ด๐ฟ๐ผ๐ ๐ฝ๐ฒ๐ฟ๐๐ผ๐ป๐ฎ๐น๐น๐?
- Find a mentor for guidance and support
- Expand your technical skills across multiple languages
- Leverage opportunities within your current organization to demonstrate your capabilities
๐ช๐ต๐ฒ๐ฟ๐ฒ ๐๐ผ ๐๐๐ฎ๐ฟ๐ ๐ถ๐ณ ๐๐ผ๐ ๐๐ฎ๐ป๐ ๐๐ผ ๐ด๐ฟ๐ผ๐ ๐๐ต๐ฒ ๐ป๐ฒ๐ ๐ ๐ด๐ฒ๐ป ๐ผ๐ณ ๐ฎ๐ฟ๐ฐ๐ต๐ถ๐๐ฒ๐ฐ๐๐?
- Fine mentees and lean in consistently
- Identify opportunities for your mentee to shadow and really participate as an architect (nothing beats OTJ with a safety net)
While there are plenty of voices out their saying โarchitecture is deadโ and โhurray for engineersโ, I believe there is a more practical middle ground. I have a degree in software engineering, Iโm hands on, and I am proud to be a software architect.
#SoftwareArchitecture #Leadership #SoftwareEngineering #Empathy #HumansFirst
Photo by Christina@wocintechchat.com on Unsplash