Ensure significant architecture decisions are documented and communicated
- Establish practices around design workshops and architecture decisioning;
- Define and enable sufficient (lean) architecture documentation practices;
- Define and enable significant architecture decisions registration process.
Enable engineers to work autonomously while applying principles consistently
- Work with Engineers to establish and continuously improve fundamental architecture and system design principles that are easy to read and understand unambiguously;
- Work with Engineers to establish and continuously improve API Design principles;
- Continuously advocate design principles both in one-on-one conversations as well as in Communities of Practice;
- Always refer to design principles while working on specific solutions or performing code-reviews.
Proactively drive the improvement of maintainability and scalability of the relevant components
- Define Improvement Themes for specific components in the responsibility areas with the roadmap in accordance with the Product Strategy
- Engage with Product Managers, Engineering Managers and Engineers to align on the execution plan
Ensure enough up-front design effort on architecting new components or significant re-engineering initiatives on existing
- Facilitate the design and the architecture workshops
- Ensure significant decisions are captured on the relevant and efficient medium;
- Prevent paralysis-by-analyses, hype-driven development and technology-first type of anti-patterns from happening;
- Advocate and facilitate risk-driven and trade offs based solutioning approach.
Establish yourself as influencer and technical authority
- Work hands-on together with engineering teams on new initiatives either in POC / prototyping or actual implementation
- Represent company at technical events and conferences
- Proactively share knowledge both within and outside of Product organisation
Ensure strong quality properties awareness among engineers
- Actively advocate and challenge engineers on quality properties, such as Security, Performance, Scalability, Testability;
- Establish and facilitate communities of practice on different quality subjectsPerform code reviews both reactively as well as proactive and offer empathic but concrete feedback;
- Establish and proactively gather metrics on different quality properties;
- Establish the plan and facilitate the execution on improvement particular properties in specific areas of the platform;
- Oversee and facilitate the application of the automated testing strategy in the area of the responsibility
Provide reactive and proactive technical leadership
- Coach internal engineers on architectural thinking and advanced engineering practices;
- Be a servant leader available to help engineers with any challenges or questions;
- Communicate with empathy and challenge directly.