Typical responsibilities
- Design system architecture, services and data flows.
- Choose technologies and document the reasoning behind each decision.
- Plan migrations, refactors and modernization of legacy systems.
- Define standards for security, scalability, reliability and observability.
- Review designs and code for critical parts of the system.
- Estimate the cost and risk of technical options.
- Mentor engineers and align technical plans with business goals.






