Responsibilities
- Own driving Galileo’s software architecture and systems forward, setting long term direction and executing on it across multiple teams and quarters.
- Build as an exemplary practitioner: you will get to be hands-on developing software, and set a high quality standard for teams to follow.
- Define the right boundaries, APIs, and integrations between our teams and with our clients and partners to set us up for technical and business success.
- Solve complex engineering problems endemic to high-availability, low-latency, scalable distributed systems.
- Execute large-scale projects, leading design, planning, and execution across multiple teams to drive technical directions and product outcomes.
- Proactively identify broader problems and opportunities.
- Anticipate and design the next generation of our systems and products.
- Raise the quality of our engineering teams: you will identify opportunities and advocate for improvements to the way we write software, our approach testing and quality, and shape the habits and processes of highly effective teams.
- Mentor and coach to individuals and teams across the company.
- Steward engineering communities, fostering design collaboration and mindshare.
- Articulate how technical architecture and team structure interact, provide input to the right organization structure to deliver on our engineer goals.
- Strategic advisor to leadership, representing technical strategy to business and executive stakeholders, and participating in strategic planning.
- Continuously drives improvement, new practices and operational excellence initiatives across the department (e.g. multiple groups).
- Raises the quality of department and products.
- Be able to stand up processes, mechanisms, or tools to improve engineering excellence, operations, and quality of our technology.
- Through a combination of working through others and their contribution, improves the department's systems by championing improvements in code, design, and operational reviews.
- Leads initiatives that improve department software quality and operations.
- Be a stakeholder in engineering norms and standards for code quality, software quality, and operational excellence for your department.
Requirements
- 10+ years programming experience, mastery of software development independent of language (Ideally in Python)
- Advanced expertise in designing, building, and operating large-scale fault-tolerant distributed systems, applications, databases, and workflows.
- Demonstrated experience with continuous delivery principles and techniques: you’ve built systems with layered test automation that is always safe for automated releases to production, enabling a great, low-cycle time developer experience.
- A high standard for what “great” looks like, and experience continuously improving legacy systems to reach it.
- Strong judgment, experience recognizing and driving out critical decisions in a balanced and pragmatic way.
- Experience building systems with public cloud infrastructure, preferably AWS.
- Excellent verbal and written communication skills.
- Ability to lead and influence technical direction across multiple teams.