At Symphony, we're on a mission to help people communicate, collaborate, and enjoy their work. Our secure messaging and meetings platform is changing the way people do business in information-sensitive industries. This is a hands on engineering management opportunity with a fast growing organization.
Symphony’s Microservices and Containerization Team is responsible for designing and building our microservices environment that enables all the otherengineering teams to operate in a highly scalable loosely coupled microservices environment at scale. This team is fully responsible for the cloud native microservices infrastructure that allows us to scale all symphony services across multiple public cloud solutions.
As a Senior SoftwareEngineering Manager for the Microservices and Containerization Team, you'll manage a two-pizza team of 4-7 talented engineers; responsible for structuring the way our service frameworks self-discover, manage configuration, and scale out, for high-levels of fault tolerance, architectural design, and core service implementations.
The ideal candidate will have experience managing contract-first services in a service oriented architecture and understand the features available from public cloud offerings to optimize for a cloud-native deployment of services.
- You should be deeply involved with the design decisions of your team. You will understand cloud native architecture and microservice design philosophy and lead through example
- You will work closely with cross-team technical leaders to execute against technical vision and architecture of the overall product
- Work in a continuous integration continuous development environment where you help maintain discipline and enforce the 'do not break the build rule'
- Live a culture of quality, and provide hands on guidance to the team on fast feedback loops on development and rapid iteration through continuous deployments and automatic test-gated deployment
- Manage delivery of agile backlog in collaboration w/architecture team
- Establish and maintain technical excellence of individual contributors
- Lead technical and architecture reviews for the team
- Communicate the containerization tooling roadmap to peer teams
- Establish and maintain continuous integration, continuous delivery pipelines
- Contribute your own code to the code base
- Mentor team members in coding and development skills, including softwarearchitecture, cloud-native design, contract-first design and test driven development
- Provide clear & specific goals to the team and communicate performance feedback regularly through regular 1-1 meetings and performance reviews
- Bachelor’s Degree in Computer Science, Engineering or related field
- 10 to 15 years of professional experience in software development and delivery
- 5 to 10 years of professional softwareengineering management
- 5+ years of professional experience in Java softwareengineering
- Experience with Docker containerization and container orchestration in Kubernetes
- Demonstrated experience designing API-first contracts and microservices
- Demonstrated experience maintaining continuous delivery pipelines
- Demonstrated experience running an agilescrum process
- Technical excellence in Java; exposure to other moderninternet event-drive languages helpful (scala, node-js, python)
- Deep familiarity with service oriented architectures and contract-first design
- Experience managing the design and development of simple, yet scalable software, for low latency, reliable, and secure communications functions
- Technical expertise should include:
- HTTP JSON Restful API design
- Microservices architectures
- Containerized deployments
- Distributed systems and eventual consistency concerns