Principal Software EngineerJob Duties:Serve as a technical authority and architectural leader across the Onapsis Platform. As an individual contributor, role is focused on system-level design, technical strategy, and engineering excellence across multiple teams and products. Job duties include:
- Act as a technical authority for complex, distributed software systems across the Onapsis Platform
- Lead the design and evolution of application- and system-level architecture for large-scale, security-critical software
- Serve as a technical consultant and advisor to multiple engineering teams
- Partner with Product and Engineering leadership to evaluate, prioritize, and negotiate technical debt and architectural investments
- Define and document architectural standards, patterns, and best practices
- Drive proof-of-concepts (POCs) and technical evaluations for new technologies and platform capabilities
- Ensure software systems meet high standards for scalability, reliability, security, and maintainability
- Participate in and elevate code reviews across multiple teams
- Mentor senior engineers and architects, raising the overall technical bar
- Represent engineering in cross-functional discussions with Product, Research, Security, IT, and Executive stakeholders
- Influence long-term technical strategy and roadmap execution without owning people
Minimum Requirements:Bachelor's degree in Computer Science, Engineering, or a related technical field (or a foreign equivalent).
8 years of experience in software engineering or enterprise software development. The stated experience must also include: (1) Developing backend systems using Python or another object-oriented programming language; (2) Designing and implementing RESTful or GraphQL APIs; (3) Developing software for both cloud-based and on-premise deployment environments; (4) Designing or implementing multi-tenant SaaS architectures and applications; (5) Working in Linux-based operating environments; (6) Deploying or operating applications on public cloud platforms, including AWS or Azure; (7) Working with containerization technologies, including Docker or Kubernetes; (8) Designing, developing, and optimizing relational databases, including PostgreSQL; and (9) Implementing secure software development practices throughout the software development lifecycle for enterprise-grade applications.