Senior Software Engineer
Symphony is a platform that provides end-to-end secure messaging. Weʼre looking for a motivated, productive, team-oriented, and hands-on Senior Software Engineer to join one of our Core Microservice Teams.
The Core Microservice Team builds the core Symphony platform, which serves as the distributed systems foundation for all of Symphony’s application development. We are building all common layers to manage a containerized microservice architecture, core microservices and their RESTful APIs used by the rest of the Symphony application engineering teams to build applications that are used by Symphony end-users on a global scale. This system manages billions of API transactions from across multiple regions of the world and provides high-availability and fault tolerant failover between the regions.
We are investing deeply in reliability improvements to support our scale and the business criticality of our containerized applications. API-first design and operational automation, testing, and performance are critical to the success of everything we are building. We are looking to expand the team with software developers that can advance not only the functionality of the platform, but also keep a strong focus on the operational challenges around keeping the platform reliable as it continues to scale.
- Design and build cloud-native core services of the Symphony collaboration and messaging platform
- Design and implement distributed, horizontally scalable, and highly resilient Java based microservices in the core platform
- Include production visibility/metrics and testability into everything your build
- Support API-first design for the future while maintaining and deprecating legacy APIs
- Refactor existing monolithic design into microservices to achieve more visibility and flexibility including data model changes, where necessary
- 5 to 8+ years experience designing and implementing high-performance, horizontally scalable, server-side distributed systems in Java
- Ability to work effectively in an Agile Scrum team to effectively scope backlog items and identify risks and interdependencies early
- Ability to perform clean RESTful API design and understand the impacts of the design on client side application code
- BS or MS degree in Computer Science or a related technical field
- Passion and demonstrated experience in developing software in a large-scale microservice system
- Experience with container orchestration platforms (e.g. Kubernetes) and container runtimes (e.g. Docker)
- Knowledge of Linux system implications and how different JVM implementations/versions work in these environments
- Experience using tracing and logging systems to diagnose production problems quickly
- Experience building business-critical, large-scale systems with extreme availability
- Experience with public cloud including Amazon AWS, Google Cloud Platform, or Microsoft Azure
We’re looking for top-notch talent to join our team to help us change the way the world communicates. If you have the skills and savvy to work with a world-class team and an appetite for game-changing disruption, we want to hear from you!
BENEFITS AND PERKS*:
- Medical, dental, and vision coverage
- 401(K) plan
- Life and AD&D coverage
- Short-term and long-term disability coverage
- Employee assistance program
- Flexible spending account benefits
- Unlimited vacation and sick time
- Fully stocked kitchen and catered or reimbursed lunches
- Discounted gym memberships
- Many other fun and exciting benefits and activities!
- Competitive salary
- Bonus Plan
*Benefits and Perks vary based on location.
Symphony reserves the right of ownership for all unsolicited resumes submitted for this requisition and is not responsible for any fees associated with unsolicited resumes. Symphony is an Equal Opportunity Employer. Symphony participates in E-Verify.
Any offer of employment is conditioned upon the completion of an I-9 form and submission of the appropriate documents for identity and work authorization.
Note: If considered for a position you will be subject to a criminal background check. A conviction is not an automatic bar to employment. Each case will be considered on its own merits. The nature of the offense, the date of the offense, the surrounding circumstances, the relevance of the offense to the position(s) applied for, and any pattern of offenses may, however, be considered.
Back to top