Hybrid Embedded Software Engineer

Posted 1 minute ago

Apply now

About the role

  • Embedded Software Engineer responsible for designing and maintaining embedded software solutions for Fortinet's cybersecurity platforms. Collaborating with cross-functional teams to deliver high-quality security products.

Responsibilities

  • Participate in the development and maintenance of existing and next-generation firewall product suites.
  • Design, implement, and maintain core platform modules for embedded networking and security appliances.
  • Develop and enhance low-level software components, including device drivers, kernel modules, and board support packages (BSPs).
  • Take ownership of significant areas of the codebase for both new feature development and maintenance or redesign of existing product areas.
  • Support all phases of the software development life cycle, including requirements gathering, design, implementation, testing, validation, and deployment.
  • Collaborate closely with hardware teams on board bring-up, platform integration, debugging, and validation of new systems.
  • Optimize software for performance, scalability, memory efficiency, reliability, and maintainability.
  • Debug and resolve complex issues across hardware and software layers using a structured and systematic approach.
  • Contribute to embedded platform architecture, software design decisions, and long-term technical improvements.
  • Participate in code reviews, CI/testing, and development best practices to ensure high-quality deliverables.
  • Follow secure coding practices and support the development of security-focused product features.
  • Continuously contribute to product improvements in performance, scalability, reliability, and maintainability.

Requirements

  • Bachelor’s degree or advanced degree in Computer Science, Electrical Engineering, or a related field.
  • Strong proficiency in C and/or C++ programming.
  • Experience with embedded Linux systems and low-level software development.
  • Solid understanding of operating system concepts, including memory management, processes, concurrency, and multi-threaded systems.
  • Strong problem-solving and debugging skills, with the ability to analyze complex multivariate problems and drive efficient resolution.
  • Understanding of L2-L4 network protocols and networking fundamentals such as TCP/IP, routing, and switching.
  • Experience with hardware interfaces such as SPI, I2C, UART, PCIe, or similar system interfaces.
  • Familiarity with debugging and validation tools such as GDB, JTAG, oscilloscopes, or logic analyzers.
  • Good written and verbal communication skills, including the ability to work effectively across teams.

Benefits

  • medical
  • dental
  • vision
  • life and disability insurance
  • 401(k)
  • 11 paid holidays
  • vacation time
  • sick time
  • comprehensive leave program

Job title

Embedded Software Engineer

Job type

Experience level

Mid levelSenior

Salary

$96,800 - $118,300 per year

Degree requirement

Bachelor's Degree

Location requirements

Report this job

See something inaccurate? Let us know and we'll update the listing.

Report job