At Synadia we are pioneering a new way for digital systems to connect and communicate between cloud, on-premise, and edge securely, in real-time, and in any environment. We love open source software (OSS)! We maintain and lead the development of NATS - a next generation distributed communications platform.
Applications Software Engineer
Employment Type: Full-time
Level: Mid to Senior
As a software engineer on the Applications team, you will develop SaaS and Hosted Applications that enable Synadia’s customers to seamlessly manage and monitor their NATS clusters. These Applications help Synadia’s customers use NATS to build geo- distributed, zero-trust meshes that connect Cloud Microservices, Edge IoT Devices, and everything in-between.
A successful candidate will be a self-starter who is passionate about working collaboratively with a distributed engineering team throughout the development phases and believes QA is not only about finding and fixing bugs - it’s about preventing them.
- Bachelor’s degree in Computer Science or equivalent
- Experience developing RESTful web services in Go
- Experience with Swagger/OpenAPI Specification
- Experience interfacing with relational databases
- Experience writing unit tests, integration tests, and mock interfaces for testing
- Experience performance tuning and optimizing software
- Strong Unix/Linux systems level programming and troubleshooting skills
- Strong fundamentals in distributed systems design and development
- Strong ability to collaborate with Stakeholders, Project Managers, and Frontend Engineers
- Knowledge of cyber security standards
- Experience configuring and interfacing with messaging technologies such as NATS, JMS, MQTT, AMQP, and Kafka
- Experience or familiarity with frontend technologies including React and NextJS
- Experience implementing distributed tracing solutions such as OpenTelemetry and Jaeger
- Experience configuring and interfacing with monitoring solutions such as Prometheus, DataDog, and New Relic
- Proficient in design and analysis of algorithms and data structures
- Experience interacting with user groups and open source communities
- Experience with systems/networking level programming