As a Senior Software Engineer, you’ll be driving and proposing strategies around complex and unique technical problems affecting the business needs, communicating standards and getting buy-in on solutions. By serving as an expert and owner in multiple areas of the codebase you will successfully deliver architecture/execution of major components from conception to release.
About the Team
As a Senior Software Engineer in our team, you’ll be part of the Coverage & Analysis pillar, working on our most valuable part of the product. Our customers want to get coverage across as much of their cloud infrastructure as possible, and you’ll be working cross-functionally to help deliver this. You’ll manage a small number of engineers within the team, and support the product management team on defining the roadmap to ensure we build what’s really important to customers. You’ll also have the chance to engage with our customers on a regular basis, and get feedback on what problems they’re facing day to day as they continue to adopt cloud technologies.
You’ll join the team to support continued expansion of coverage across the major cloud service providers, solving complex problems so our customers can focus on remediation of the risk they face.
Outside of your team, you’ll contribute to the wider InsightCloudSec architecture and engineering direction, and also to the broader Rapid7 engineering community.
About the Role
As a senior Software Engineer, your primary responsibility will be to help set and drive the technical direction for the team.
Specifically, your focus will be to:
1. Build, maintain, and release high-quality software applications
2. Work with stakeholders, including Product Management and UX to shape features during design and planning, where you will provide technical direction
3. Ask questions! Getting involved in code and design reviews, helping to improve what we’re building. We love to collaborate; Directly mentor a small number of junior engineers and help grow their skills, identify growth areas, set expectations and provide feedback
4. Help shape our architecture. We’re continuing to evolve our integrations and you’ll be involved in initiatives as we grow and scale, making sure we’re effective in our ability to process millions of events a day.
5. Be a mentor. Share your experience across the team to help others learn, and inspire your peers to do their best. You’ll also expect the same back from your team
6. Code, code, and more code!
The skills and qualities you’ll bring include:
7. 5 years+ experience with Python
8. Deep understanding of one or more languages, primarily Python
9. An interest in remaining a hands-on programmer for the next few years as you learn and contribute to the architecture of the system
10. Familiarity with CI/CD pipelines such as Jenkins and proficiency with version control systems such as GitHub
11. A demonstrable passion for the craft of software development
12. A history demonstrating a team-based approach to problem solving
13. Experience defining contracts for coordinating development of software projects across multiple teams
14. A dynamic sense of ownership and responsibility for the quality of the software that both you deliver
15. Empathy for our users and the Rapid7 mission
16. An ability to pick up new technologies and processes quickly
17. Experience mentoring junior members of the team
18. Knowledge of cloud computing platforms, such as AWS, GCP and Azure, and it’ll be a bonus if you have experience with cloud security
We know that the best ideas and solutions come from multi-dimensional teams. That’s because these teams reflect a variety of backgrounds and professional experiences. If you are excited about this role and feel your experience can make an impact, please don’t be shy - apply today.