About Prowler
We are an Open Source seed-stage startup revolutionizing cloud security infrastructure. Our mission is to build cutting-edge, practitioner-friendly solutions that empower users to secure their cloud environments effortlessly. We are looking for an experienced and dynamic software engineer expert in Python and Django who thrives at the intersection of development, security, and community to join our team as a Python backend developer.
Prowler is a company that values our people as much as it values cybersecurity, demonstrated by mandatory PTO, a fully remote team and other benefits. Day to day, Prowlerians collaborate, architect, and deploy security checks and remediations across cloud deployments at scale, empowering users to discover the edges of their systems and find gaps in their security posture. We celebrate diversity and are committed to creating an inclusive and welcoming work environment for all employees.
Check out our website here: https://prowler.com
Here our public roadmap: https://roadmap.prowler.com/en/roadmap
Prowler on Github: https://github.com/prowler-cloud/prowler
This is a full time, salaried position writing, testing, reviewing, and operating code at scale. Prowler is fully remote and distributed, spanning all U.S. time zones and several in E.U. This necessitates individuals taking responsibility for their working hours and broadcasting availability to colleagues. Mandatory minimum PTO (shoot for ~5 weeks; anything less than 4 weeks/year is unacceptable), workstation/home office stipend per year, flexible working hours, and stock options are some of our other benefits.
Primary Responsibilities
- Design, build, and maintain secure and scalable back-end APIs using containerized Django apps and Python.
- Contribute to backend architecture decisions and product infrastructure planning.
- Optimize system performance, reliability, scalability and security in a cloud-native environment.
- Collaborate with product owners, designers, and fellow developers to define project requirements and features meant to cover business needs.
- Lead code reviews, automated testing, and continuous deployment workflows, providing constructive feedback to maintain high code quality and adhere to best practices. Mentor other engineers on this matter.
- Lead the continuous improvement of best practices introducing latest industry standards.
- Manage and integrate relational databases, ensuring consistency, scalability, and performance (currently using PostgreSQL).
- Think beyond the code and about our users and customers, understand their needs and define solutions with the team.
- Actively participate in Prowler community support, guide others on this matter.
Qualifications / Skills / Experience
We evaluate the following in candidates for this role:
- Advanced proficiency in Python, hands-on experience on Django is a plus.
- 57+ years experience in Backend development or equivalent.
- Strong understanding of RESTful API design and implementation.
- Solid and proficient expertise in relational database design and optimization, especially PostgreSQL.
- Experience working in cloud-based environments (AWS, GCP, or Azure).
- Proficient in Git and collaborative development workflows.
- Awareness of security, scalability, and maintainability best practices in software design.
- Experience with containers and orchestration tools (Docker, Amazon Elastic Container Service).
- Experience working with CI/CD tools and deployment automation.
- A strong advocate for unit testing, thorough documentation, and maintaining high standards of code quality
- Proven ability to work independently and remotely.
- Working fluency in English.
- Startup mindset: initiative, proactive attitude.
- Interest to learn fast about Cloud Security.
Good to have
- Skilled in Cloud Security.
- Background in Open Source projects.
How will you know you are successful in this role?
- Direct teammates consider you to be a reference in Backend development and a valuable asset to the team. (Peer feedback is the most effective signal we have for individual contributor performance.)
- The person to whom you report agrees that your contribution to architecture and feature velocity proceeds at a competitive pace, and code quality is on par with top tier Python developments.
- We can ask you how your work contributes to the company’s vision, and it’s clear that your current work is the highest priority work you could be doing toward that vision.
- You contribute directly and incontrovertibly to the success of the Prowler as a product in a competitive market space.
Why join Prowler
- Opportunity to work with a rapidly growing and innovative company in the cloud security industry.
- Fully remote work, allowing for a flexible and collaborative environment.
- Competitive compensation package.
- Continuous learning and professional development opportunities.
- Be part of a dynamic team that values creativity and innovation.
Hiring Process
- Intro/Technical Screen: If you are interested in this role, we would love to meet you for a 30 min call with one of our founders or tech leads. You will be invited to talk about your experience and the challenges you have faced as a professional. (30 minutes)
- Technical Exercices: You will receive a PDF the day and hour that you prefer, the document containing a few technical exercises that you must solve and send back in a maximum of three days.
- Team Interview: Finally, we will invite you to a 1 hour chat with 2 team members about design systems and product orientation (1 hour).
- Cultural Interview: We have a generative, diversity-focused culture that highly prioritizes context over control. Not everyone prefers this type of environment, and this interview ensures that you are comfortable with the freedoms and responsibilities we expect of our colleagues, and that you can thrive here. (1 hour)