




Summary: This Senior Architect role involves designing and evolving scalable, performant, and secure critical backends for global streaming applications, acting as a technical advisor and solution definer. Highlights: 1. Design and evolve critical backends for global streaming services 2. Advise technical teams on architecture, scalability, and security 3. Define solutions for new components and assess system-wide changes **Summary of the role:** In the Global Apps Engineering group, we’re responsible for developing the customer\-facing application that runs on dozens of different consumer devices, like smart TVs, mobiles, streaming sticks, set\-top\-boxes and even VR devices and provides streaming services to millions of customers across the globe over multiple commercial propositions like Peacock, NOW, SkyShowtime and Showmax. Our group is also responsible for server\-side services that are directly attached to our client applications, like experimentation (i.e. showing our customers different versions of the interface, or different functionalities, to understand how they perform and how our users interact with them), client configuration, and textual resources (UI labels/names). These are “tier\-1” services that are used by our applications directly and need to service millions of client applications concurrently, with extremely high uptime and stringent latency requirements. The Senior Architect for GAE backends is in charge of designing the architecture of these critical backends, ensuring they are scalable, performant and secure, and evolve them according to our business needs and objectives. He / she should have a deep technical understanding of this domain and the components within it, including the interactions between the components and external consumers, intra\- and extra\- domain. He / she should be comfortable with coding practices and patterns and be able to understand code and configurations within the domain under his responsibility. Additionally, he/she should act as an advisor to the technical teams within his domain, covering aspects like architectural concerns – scalability, resilience, maintainability, security, etc. – as well as technology choices. This advice should be given considering both industry practice as well as alignment with other areas in the company. The architect should also be able to understand the principles of operation and support of the components within this domain, working with operational teams on high\-availability, visibility and measurement of those components and the system as a whole. Finally, the architect should be comfortable to define solutions for new components, changes to existing components and impact assessment of proposed system\-wide changes that may reflect on the components of his domain. He/she must also be able to assist teams with defect identification and correction. **What You'll Do:** * Keep a holistic view of the system, inner components, and dependencies; * Understand the dependencies on external entities and systems; * Guarantee alignment between the development teams; * Coordinate with the teams to have a clear technical roadmap, crossing it with the running projects and team availability; * Support impact analysis for changes to the existing systems; * Create high\-level designs for new projects and changes; * Manage deprecations and software evolution; * Working within an agile environment, working closely with the Product Owners, Project Managers, Technical Analysts and Engineers to align on solutions that meet product goals. **What You'll Bring:** * Proficiency in designing scalable, reliable, and maintainable systems. * Expertise in architectural patterns (e.g., microservices, event\-driven, layered architecture). * Good technical development skills (Java, C\#, JavaScript, SQL, Python, C, etc); * Proficiency in designing scalable, reliable, and maintainable systems. * Proficiency in modelling complex system using well established practices (UML 2\.0; Diagrams; Flowcharts) * Proficiency in producing and maintaining clear technical documentation * Understanding of distributed systems, load balancing, and fault tolerance * Understanding of resource management mechanisms: connection pools, thread pools, heaps, etc.; * Understanding of DB mechanisms (SQL/no\-SQL) \- Indexes, Table Partitions, Statistics, etc. (SQL Server/Oracle/MongoDB/Redis). * Experience with Http based API design (e.g., REST, GraphQL). * Experience in working with very large scale systems (millions of clients) is a plus; * Experience working in client applications is a plus; * Experience with feature experimentation / AB testing systems is a plus; * Clear written and verbal communication skills, with the ability to convey technical concepts to non\-technical stakeholders. * Strong ability to synthetise complex systems into readable documentation * Analytical skills to evaluate trade\-offs and make informed decisions. * Ability to align solutions with business goals and enterprise\-wide strategies. * Ability to mediate and find common ground among competing technical or business priorities/solutions. * Ability to influence decisions without direct authority. * Bachelor’s or Master’s degree in Computer Science, Software Engineering or a related field * At least 5 years of experience in software architecture or related roles


