Fortinet is seeking a Staff Software Development Engineer to design, develop, and maintain distributed Java applications and services. The role involves architectural design, system scaling, code maintenance, and collaboration with DevOps and QA teams. Strong experience in Java, distributed systems, and networking protocols is required.
Requirements
- 8+ years of hands-on software engineering experience with a strong foundation in computer science.
- Deep expertise in Java, including multithreading, network programming, and object-oriented design.
- Proven experience in building and scaling clustered Java applications in production environments.
- Solid understanding of distributed systems principles (CAP theorem, consistency models, data replication, fault tolerance).
- Proficiency with gRPC, Protocol Buffers, and/or reactive programming models.
- Strong knowledge of Linux internals.
- Deep understanding of Layer 2/3 networking protocols and related technologies.
- Experience with relational or column-oriented databases, schema design, and query performance tuning.
- Hands-on experience with Redis.
- Familiarity with DevOps principles and Continuous Delivery best practices.
- Ability to work effectively in a fast-paced, agile development environment.
Benefits
- medical
- dental
- vision
- life and disability insurance
- 401(k)
- paid holidays
- vacation time
- sick time
- equity program
- Bonus eligibility