Senior Software Engineer, Agent Endpoint DLP
Role details
Job location
Tech stack
Job description
You will work in our Cyber R&D team, and use your knowledge of systems (Kernel, OS) level development to develop our Agent architecture. The Agent is our endpoint client software and is responsible for the extraction and management of our customer's data. With this we protect people and data anywhere, with innovative companies worldwide using FortiDLP for human-centric data loss protection. Key Responsibilities and Technologies
- Implementing new capabilities within the FortiDLP endpoint agent, taking ownership of features and leading the development effort.
- Maintain and improve existing functionality of the FortiDLP agent.
- Contributing to code, tests, and code review.
- Keep a strong focus on code quality, maintainability, and secure coding practices.
- Maintain close communication within the team as well as across other teams to coordinate progress.
Requirements
At FortiDLP we default to programming using Go but also use a wide variety of different languages and frameworks. It's not expected that you would be familiar with Go (or any of the other languages we use) but you should be enthusiastic and willing to learn new things. We value:
- Strong programming skills backed by at least 3 years of software engineering experience.
- Familiarity with computer science fundamentals.
- Software development in Go, C, C++, Java, Scala, C# or Swift.
- Kernel and device driver development for Windows, Linux, or Mac.
- Systems Analytics; Dynamic tracing and performance analysis tools such as Instruments, VTune, DTrace and eBPF.
- Observability technologies, logging and metrics.
- Security principles including PKI, certificates and cryptography.
Communication and Collaboration
We work on complex, cross-functional features that require close collaboration with engineers across the endpoint, product managers, technical writers, and support teams. Team members contribute throughout the development lifecycle, from writing technical specifications and coordinating implementation to demoing features internally, supporting launches, and ensuring our solutions are well-documented and maintainable. We also work closely with the support and QA teams to prepare for releases, debug early issues in the field, and ensure a smooth rollout experience. High engineering standards are central to our team culture, including thorough code reviews, rigorous testing, and shared responsibility for quality and reliability.
We're looking for engineers who communicate clearly, work well with a wide range of collaborators, and enjoy building shared understanding across disciplines. The role suits people who are thoughtful partners to product managers and support teams, value feedback as part of the development process, and bring a sense of ownership and care to both their code and their collaboration.