Software Development Engineer

Fortinet, Inc.
1 month ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English
Compensation
£ 56K

Job location

Tech stack

C
Java
JavaScript
API
C Sharp (Programming Language)
C++
Code Review
Computer Programming
Software Debugging
Memory Management
Elasticsearch
Protocol Buffers
Python
PostgreSQL
Machine Learning
Natural Language Processing
Regular Expressions
Software Engineering
Scripting (Bash/Python/Go/Ruby)
Large Language Models
Concurrency
Backend
Information Technology
Front End Software Development
REST
Go

Job description

As an Insight Team software engineer, your responsibilities will include:

  • Designing and maintaining policies, which are configurable scripts written in Starlark (a Python-like embedded scripting language) that run on endpoints to detect signs of unauthorized or malicious activity.
  • Continuously investigating new techniques to detect emerging forms of cybersecurity violations.
  • Applying machine learning and statistical techniques to detect anomalies and identify suspicious or unexpected behavior.
  • Researching and developing data identifiers (e.g. regular expressions) to detect sensitive information, and contributing to the underlying content extraction and identification infrastructure, including components written in C/C++/Swift.
  • Enhancing and maintaining the execution environment for policies, built primarily in Go (Golang).
  • Managing the policy lifecycle within our backend systems, including APIs and infrastructure built in Go, using technologies like Protocol Buffers, PostgreSQL, and Elasticsearch.

Insight Team members have the unique opportunity to contribute beyond the core policy framework by collaborating with teams across the company. We work closely with the Agent Team to develop our browser extensions (Javascript), mail plugins (C#), and capabilities for content inspection and data blocking. Other cross-functional projects have included partnering with the Platforms Team to build an LLM-powered assistant that analyzes and contextualizes policy violations, working with the Infrastructure Team to develop our REST APIs, and enhancing the frontend UI for our policy product using Elm.

We work on complex, cross-functional features that require close collaboration with engineers across the stack, 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.

Requirements

Direct experience with our specific technologies is a bonus but not required. We're looking for relevant experience with comparable tools and frameworks, and the ability to quickly learn and adapt. We encourage you to apply for this position if you have:

  • A degree in Computer Science or a closely related field (Bachelor's or higher), with a strong grasp of core computer science concepts such as memory management, concurrency, and backend development principles
  • Strong programming skills, supported by several years of professional software engineering experience
  • Experience with Java, C, C++, or similar languages, and an openness to learning Go
  • Familiarity with Python, which shares syntax with Starlark (our embedded scripting language) and is commonly used to prototype models
  • A strong interest or background in data science, machine learning, statistical analysis, or natural language processing is a plus - especially as applied to behavioral analytics and anomaly detection - but this is primarily a software engineering role, and we're looking for engineers who are comfortable applying these techniques as part of a broader, hands-on development role

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.

About the company

Join Fortinet, a cybersecurity pioneer with over two decades of excellence, as we continue to shape the future of cybersecurity and redefine the intersection of networking and security. At Fortinet, our mission is to safeguard people, devices, and data everywhere. We are currently seeking a Software Engineer (Cybersecurity Analytics & Enforcement) to contribute to the success of our rapidly growing business. The FortiDLP platform collects millions of data points per second, and innovative companies worldwide use FortiDLP for human-centric data loss protection. Our users need a way to spot trends in this data, search for security breaches, and take effective action. The Insight Team is responsible for the development and maintenance of our policy engine - a powerful framework used to detect cybersecurity violations through configurable rules and behavioral analytics. Our work spans the full lifecycle of these policies, including their creation, execution, and management., At Fortinet, we embrace diversity and inclusivity. We encourage applications from diverse backgrounds and identities. Explore our welcoming work environment designed for a rewarding career journey with an attractive Total Rewards package to support you with your overall health and financial well-being. Join us in bringing solutions that make a meaningful and lasting impact to our 660,000+ customers around the globe.

Apply for this position