Booking Holdings is seeking a Senior Site Reliability Engineer I responsible for building software applications, designing systems, owning services end-to-end, managing incidents, automating operations, improving monitoring, and providing architectural guidance.
What You'll Do
- Build software applications using relevant development languages and guide junior team members.
- Refactor and simplify code by introducing design patterns and guide junior team members.
- Ensure application quality by following standard testing techniques and methods.
- Write readable and reusable code by applying standard patterns and using standard libraries.
- Maintain data security, integrity, and quality by following company standards and best practices.
- Evaluate architecture solutions considering cost, business requirements, technology requirements, and emerging technologies.
- Describe implications of changing or adding systems by understanding infrastructure and architecture.
- Help grow the business by applying engineering techniques like prototyping and vendor evaluation.
- Design solutions that meet current requirements and are adaptable for future enhancements.
- Own a service end-to-end by monitoring application health, performance, and relevant metrics.
- Reduce business continuity risks by applying practices, tools, and writing documentation like runbooks.
- Reduce risk and obtain customer feedback using continuous delivery and experimentation frameworks.
- Independently manage an application or service through deployment and operations in production.
- Address and resolve live production issues by mitigating customer impact within SLA.
- Improve system reliability by producing long-term solutions through root cause analysis.
- Keep track of incidents by contributing to postmortem processes and logging live issues.
- Ensure infrastructure stays current by reducing technical debt, searching for bottlenecks, and preparing for scaling.
- Reduce cost of operations by leveraging new technologies, automation, and partnering with vendors.
- Reduce human labor by writing software features that address availability, scalability, latency, and efficiency.
- Review performance of production systems by monitoring observability metrics, business KPIs, and capacity planning.
- Improve application reliability by advising development teams on setting appropriate observability metrics.
- Identify patterns and underlying issues in complex situations and find solutions using logical thinking.
- Constructively evaluate and develop ideas by reviewing them, taking external knowledge, and initiating improvements.
- Identify opportunities for process, system, and structural improvements by examining current processes.
- Design and implement improvements by defining adapted/new process flows, standards, and practices.
- Deliver clear information to a target audience using suitable communication mediums and language.
- Achieve agreeable solutions by staying adaptable, communicating ideas clearly, and practising active listening.
- Ask relevant questions to engage with the speaker and understand them by applying listening techniques.
- Advise product teams on technical solutions by challenging design rationale and providing architectural context.
- Set a clear direction for a technical capability by evaluating and aligning target architecture improvements.
- Coach, guide, and improve performance of stakeholders and colleagues by sharing experience and knowledge.
What We're Looking For
- Master's degree.
- 5-8 years of advanced knowledge and experience.
- Proven experience in building software applications.
- Expertise in software system design.
- Demonstrated end-to-end system ownership.
- Experience with technical incident management.
- Operations background, including automation and toil reduction.
- Strong skills in observability, monitoring, and alerting.
- Critical thinking.
- Commitment to continuous quality and process improvement.
- Effective communication.
- Ability to provide architectural guidance.
- Experience in coaching and mentoring.
