Senior Software Engineer
Senior Software Engineer owning end-to-end design and implementation of a high-scale scanning engine in Python and Go. Requires strong backend/systems experience, distributed systems expertise, and scanning engine background.
About the job
Responsibilities
- Own end-to-end systems design for key components of the scanning engine, from initial design through implementation, deployment, and ongoing iteration.
- Design and implement high-quality services in Python and Go that power our scanning workflows, ensuring code is maintainable, well-tested, and observable.
- Improve performance, scalability, and reliability of the scanning engine, optimizing for large-scale, distributed scanning workloads and strict SLAs.
- Partner with security, product, and data teams to translate detection and scanning requirements into robust, production-ready systems and APIs.
- Drive technical excellence and standards in the scanning engine codebase, including code review rigor, design documentation, and best practices for secure coding.
- Contribute to architecture and roadmap decisions for the scanning platform, evaluating tradeoffs and proposing solutions that balance speed, quality, and risk.
- Diagnose and resolve complex production issues related to scanning performance, accuracy, and stability, collaborating with SRE/Infra teams where needed.
- Mentor and support other engineers on the team through design feedback, pairing, and knowledge sharing around systems design and scanning domain concepts.
Skills and Qualifications
- Strong experience as a Senior Software Engineer (or equivalent) working on backend or systems-level services.
- Proficiency in at least one of Python or Go, with the ability and willingness to work in both languages over time.
- Demonstrated experience with systems design for distributed or high-availability services, including clear understanding of scalability, reliability, and observability.
- Hands-on experience building or maintaining scanning, detection, or similar engine-like systems (e.g., vulnerability scanning, security scanning, data processing pipelines, or similar high-throughput engines).
- Strong software engineering fundamentals: data structures, algorithms, concurrency, and performance optimization.
- Experience working in a cloud-native environment (e.g., microservices, containers, CI/CD, monitoring, logging).
- Ability to collaborate effectively across teams, including product, security, and platform/infra, and communicate tradeoffs clearly to technical and non-technical stakeholders.
- Proven track record of owning projects end-to-end, from problem definition and design through implementation, rollout, and iteration.
- Comfort operating in a fast-paced, evolving environment, making pragmatic technical decisions while maintaining quality and security.
- Experience with code quality practices (testing, static analysis, code reviews) and building maintainable systems.
Bonus Points
- Cyber security domain knowledge in scanning through endpoints.
Compensation
US base salary for this position ranges from $150,000/year in our lowest geographic market up to $215,000/year in our highest geographic market.
Skills
Python, Go, System Design, Distributed Systems, Scalability, Observability, Microservices, Containers, CI/CD, Data Structures, Algorithms, Concurrency, Performance Optimization
Similar jobs
Backend Engineering jobsSenior Software Engineer designing and scaling backend data infrastructure for clinical and scientific applications. The role requires 5+ years of backend experience, strong PostgreSQL and SQL expertise, event-streaming experience, and proficiency in Julia or Python.
Senior software engineer responsible for advancing a state-of-the-art search and information retrieval platform, improving relevance and latency while collaborating with ML, product, and mission teams. Requires 7+ years of backend development experience and deep expertise in search, NLP, and machine learning.
Build and operate highly performant Core API services for real-time fraud detection, owning reliability, observability, scaling, and production operations. The role requires 5+ years of backend experience with Go or Node.js and strong SRE practices.
The Software Architect will drive hands-on platform modernization across engineering teams, pairing with developers and guiding adoption of target-state architecture, AI-assisted development, and spec-driven practices. The role requires 8+ years of backend software development experience and expertise in distributed, event-driven systems.
Build and maintain highly available, scalable distributed services, data pipelines, and platform capabilities that power Internet intelligence and security products. The role requires 5+ years of distributed-systems software engineering experience and proficiency with Go, cloud platforms, messaging systems, and databases.