Join an innovative and groundbreaking cybersecurity startup focused on helping customers identify, mitigate, and protect against ever-evolving cyber threats. With the current geopolitical climate, organizations need to stay ahead of malicious threat actors as well as nation-state actors. Cybersecurity teams are getting overwhelmed, and they need intelligent systems to help them focus on addressing the biggest and current risks first.
We help organizations protect their assets and customer data by continuously evaluating the new threats and risks to their cloud environment. This will, in turn, help mitigate the high-priority threats quickly so that the engineers can spend more time innovating and providing value to their customers.
About the Engineering Team:
We have several decades of experience working in the security industry, having worked on some of the most cutting-edge security technology that helped protect millions of customers. We have built technologies from the ground up, partnered with the industry on innovation, and helped customers with some of the most stringent requirements. We leverage industry and academic experts and veterans for their unique insight. Security technology includes all facets of software engineering work from data analytics and visualization, AI/ML processing, highly distributed and available services with real-time monitoring, integration with various other services, including protocol-level work. You will be learning from some of the best engineering talent with multi-cloud expertise.
We are looking for a highly experienced Principal Software Engineer to lead the development and scaling of our backend systems. The ideal candidate will have extensive experience in distributed systems, database management, Kubernetes, and cloud technologies. As a key technical leader, you will design, implement, and optimize critical backend services, working closely with cross-functional teams to ensure system reliability, scalability, and performance.
Key Responsibilities:
- Architect and Develop Distributed Systems: Design and implement scalable, distributed systems using microservices architecture. Expertise in both synchronous (REST/gRPC) and asynchronous communication patterns (message queues, Kafka), with a strong emphasis on building resilient services that can handle large data and maintain high throughput. Craft cloud solutions tailored to specific needs, choosing appropriate AWS services and optimizing resource utilization to ensure performance and high availability.
- Database Architecture & Optimization: Lead efforts to design and manage databases with a focus on scaling, replication, query optimization, and managing large datasets.
- Performance & Reliability: Engage in continuous learning and innovation to improve customer satisfaction. Embrace accountability and respond promptly to service issues to maintain and enhance system health. Ensure the backend systems meet high standards for performance, reliability, and scalability, identifying and solving bottlenecks and architectural challenges by leveraging various observability tools (such as Prometheus and Grafana).
- Leadership & Mentorship: Provide technical leadership and mentorship to other engineers, guiding architecture decisions, reviewing code, and helping to build a strong engineering culture. Stay abreast of the latest industry trends in cloud technology, adopting best practices to continuously improve our services and security measures.
Key Qualifications:
- Experience: 10+ years of experience in backend engineering, with at least 5 years of experience in building distributed systems.
- Technical Expertise:
- Distributed Systems: Extensive experience with microservices architecture, working with both synchronous (REST, gRPC) and asynchronous patterns (SNS, SNQ). Strong understanding of service-to-service authentication and authorization, API rate limiting, and other critical aspects of scalable systems.
- Database: Expertise in database technologies with experience working with large datasets, optimizing queries, handling replication, and creating views for performance. Hands-on experience with relational databases (e.g., PostgreSQL, MySQL) and NoSQL databases (e.g., DynamoDB, Cassandra). Expertise in various database technologies and deep experience with creating data models that provide consistent data views to the customer while data is being morphed, handling data migrations, and ensuring data integrity and high availability.
- Kubernetes: In-depth knowledge of Kubernetes, with experience deploying and managing services in Kubernetes clusters (EKS, AKS). Strong understanding of pods, services, networking, and scaling applications within Kubernetes environments.
- Golang: Proven experience using Golang as the primary programming language for backend development. Deep understanding of concurrency, performance optimization, and scalability in Golang applications.
- Cloud Technologies: Strong hands-on experience with AWS services (EC2, S3, DynamoDB, Lambda, RDS, EKS). Experience in designing and optimizing cloud-based architectures for large-scale distributed systems.
- Problem Solver: Strong problem-solving and debugging skills, with a proven ability to design and optimize complex systems.
- Leadership: Experience in leading engineering teams, guiding architectural decisions, and mentoring junior engineers.
Preferred Skills:
- Experience with infrastructure as code (Terraform, CloudFormation).
- Knowledge of GitHub-based CI/CD tools and best practices.
- Experience with monitoring and logging tools (Prometheus, Grafana, ELK).
- Cybersecurity experience.