Staff Software Engineer, Platform
The PaaS (Platform as a Service) team is looking for a Staff Software Engineer to join our team and help build our 1CP product (1 Cloud Platform). We are building a best in class platform that is used by Smarsh engineering teams to build, deliver, scale, operate, and secure applications across multiple IaaS and multiple cloud vendors.
Qualifications
- Expertise and broad range of programming/scripting experience (i.e. Java, Python, Ruby, Go, etc.).
- Strong background in managing code with Git.
- Experience managing continuous integration systems (Pivotal Concourse).
- Experience with automated configuration management and deployment tools (Puppet, Chef, etc.).
- Background working in a multi-platform environment (Linux, Windows.).
- Experience with builds and packaging in a Linux/Java environment strongly preferred (Maven, rpm, etc.).
- Experience with containerization (Docker, Kubernetes, etc.).
- Experience building and operating Pivotal Platform.
- Experience with Elastics, S3, Ceph, Minio, and MongoDB data storage solutions.
- Experience with Kafka, RabbitMQ, and other messaging systems.
- Experience leading small teams’ ceremonies (i.e. stand-ups, retros, and planning).
- Leadership with mentorship and educating less experienced engineers.
Members of the PaaS team practice and advocate for the following principle and methodologies:
- Continuous Improvement
- 12 Factor Apps
- Behavior Driven Development
- Test Driven Development
- DRY
- SOLID Design
Essential Functions
- Attend and actively participate in team ceremonies (stand-ups, retros, and planning meetings).
- Coordinate efforts with globally dispersed teams.
- Document decisions regarding technology choices, best practices and process.
- Manage code bases using Smarsh engineering practices.
- Creatively solve problems in the SaaS Operations space, collaborating with SRE, Data Services, Delivery, and Engineering team members.
- Design and develop tools and libraries for broader use by SaaS Operations and Engineering teams.
- Design and develop high volume data pipelines, in large distributed systems
- Design and develop complex event-driven systems, with DDD/BDD workflows
- Actively change code within current production systems to resolve incidents and/or enhance operational performance, following Engineering process for code change.
- Lead and actively engage in architectural conversations and plans.
- Regularly pair with other Platform Engineers to develop tools and libraries and facilitate learning and best practices.
- Lead and actively engage in projects to implement enhancements to SaaS Operations and Smarsh products.
Education and Experience
- 5-7 years industry experience
- BS in CS or equivalent