What are we looking for?
About our team - You'll be joining our dedicated platform team with a primary focus on providing high-quality essential services that support the success of other developer teams. Your primary customers will be fellow SentinelOne developers who rely on our department's key services, including worfklow orchestration, shared services & frameworks, data exports, asnychronous data sync, usage metering, and more.
As a Senior SW Engineer on Platform Engineering team, you'll play a crucial role in ensuring the smooth functioning of these critical components, and empower our users to achieve their goals. Especially for the Staff level, we are seeking a seasoned colleague, with the ability to lead epics, features and inspire others; and also to participate extensively in the architecture of the new solutions we're building. Together with us you'll elevate the entire journey and DevEx of our colleagues - create new features, scalable systems & tooling or rebuilt the existing ones from scratch.
Join our international team of 9 (with colleagues across Brno, Prague, and Japan) and become an integral part of a friendly, collaborative, pragmatic, professional, and diverse group of individuals who are ready to tackle major SW engineering challenges!
What will you do?
- Collaborate across teams - to shape and define system requirements, ensuring alignment with overall business goals.
- Design and drive projects - lead execution of high-priority, high-visibility platform projects, ensuring timely delivery and exceptional quality.
- Own feature development - take full ownership of the feature development lifecycle, from refining requirements through to successful production deployment, ensuring seamless integration and functionality.
- Build and maintain secure and scalable backend - infrastructure that serves as the backbone for other development teams, supporting their needs and enhancing overall system performance.
- Ensure efficiency and performance - develop solutions that guarantee reliability, scalability, and optimal performance, leveraging best practices and modern technologies.
- Conduct code reviews - provide constructive feedback, fostering a culture of continuous improvement and high-quality code standards.
- Troubleshoot complex issues - quickly identify, diagnose, and resolve, minimize downtime and ensuring smooth operations; be part of rotating on-call duty to respond/troubleshoot to the outage incidents.
Key business responsibilities / Your main focus areas on our team
- Product Usage Metering Platform: Develop and maintain a platform that processes massive amounts of data (billions of events) while ensuring compliance with security and financial regulatory requirements (e.g., SOC2, SOX).
- Data Export Platform: Create and manage systems for exporting various product data into our internal business intelligence (BI) analytics systems.
- Common Services and Frameworks: Design and optimize common services, frameworks, and libraries with a focus on performance, security, reliability, and excellent developer experience.
- Asynchronous Data Synchronization: Implement and support an asynchronous data synchronization platform based on Change Data Capture (CDC) principles and Kafka infrastructure.
- Workflow Orchestration Engine: Develop and maintain an internal workflow orchestration engine to streamline processes and enhance efficiency.
- Additional Responsibilities: Engage in various other tasks and projects that support our mission and drive continuous improvement.
Your stack: Java (v17 to adhere to FIPS, in the next few months we'll migrate to v21), Spring framework family (Boot, Web, Web-Flux, Cloud), Gradle, Jooq, Python & Golang (as secondary programming languages); Kafka, PostgreSQL, ClickHouse, Redis, Docker, Helm, Kubernetes, Terraform, AWS/GCP across 5 cloudregions, GitHub Actions, ArgoCD, Prometheus, Grafana
What skills and knowledge should you bring?
You are a passionate software engineer driven to deliver high-quality products. You go beyond just coding; you take accountability for specific deliverables and lead projects from the initial design phase through to final delivery. Being a team player is in your DNA, and you thrive in collaborative environments, contributing effectively to shared goals. Your deep understanding of how technology works, especially in cloud multi-tenant environments, sets you apart. You are not content with routine tasks – you excel at solving complex problems, showcasing your knack for innovation and strategic thinking. Recognizing that our primary customers are developers, you are excited about creating solutions that cater to their specific needs and enhance their overall experience.
Must haves
- Several years of experience in designing services and developing features using Java.
- Proven knowledge in: designing and architecting large and scalable cloud-based applications, developing on public cloud infrastructure (AWS, GCP etc.), and containerization & orchestration (Docker, Helm & Kubernetes).
- Strong familiarity with agile development methodologies.
- Exceptional drive, communication (written and verbal), and problem-solving skills.
Learn and Grow With Us
It’s a plus if you have experience with any of these - if not, don't worry, you'll have an opportunity to get your hands dirty and learn with us!
- Spring framework family (Boot, Web, Web-Flux, Cloud), Gradle, Jooq
- Kafka, Redis, PostgreSQL, ClickHouse; Prometheus, Grafana
- Python and/or Go (part of our codebase has been written in Python and Go)
- Working with large-scale management systems and optimizing systems for scalability and performance