Resume Score

Check how well your resume matches this job before you apply.

Sign in to check score

About the role

  • Software Developer building high-performance distributed server applications and communication protocols. Fortinet secures enterprise, service provider, and government networks worldwide.

Responsibilities

  • Participate in Fortinet’s full product development cycle, including coding, bug fixing, troubleshooting, and testing
  • Design and implement high-availability, high-performance server applications in distributed networks
  • Design and implement communication protocols with other devices and systems
  • Maintain, optimize, and evolve existing software
  • Maintain and document code using a source control system
  • Work with experienced developers on complex, innovative technology

Requirements

  • Project or Co-op experience in software development within a Unix/Linux environment
  • Hands-on working knowledge of C/C++ and/or other object-oriented programming
  • Understanding and use of any scripting language is a plus
  • Strong knowledge of data structures
  • Knowledge of network concepts and architecture, including IP, TCP, DHCP, WCCP, DNS, and routing protocols
  • Familiarity with TCP/IP and distributed network computing in Linux/Unix environments
  • Ability to quickly learn new technologies and adopt new methodologies
  • Excellent problem-solving and troubleshooting skills
  • Team player with good communication skills
  • Positive attitude
  • For intermediate-level candidates: 3–5 years of professional software development experience in Linux/Unix environments
  • For intermediate-level candidates: Strong proficiency in C/C++ and production-quality, maintainable code
  • For intermediate-level candidates: Experience designing and implementing multithreaded and concurrent systems
  • For intermediate-level candidates: Understanding of memory management, performance tuning, and debugging in C/C++
  • For intermediate-level candidates: Hands-on experience with network programming, including sockets, TCP/UDP, and asynchronous I/O
  • For intermediate-level candidates: Experience with distributed systems and high-availability architectures
  • For intermediate-level candidates: Familiarity with software design patterns and best practices
  • For intermediate-level candidates: Ability to review code and provide constructive feedback
  • For intermediate-level candidates: Ability to take ownership of features or components from design through delivery
  • Bachelor’s degree in Computer Science or Electrical Engineering

Benefits

  • 100% company-paid medical, dental, and vision coverage
  • Health Spending Account
  • Personal Spending Account
  • Employee & Family Assistance Plan (EFAP), including counseling, legal advice, and mental health resources
  • Critical illness, disability, and life insurance
  • Group Registered Retirement Savings Plan (RRSP) with company match
  • Competitive Paid Time Off
  • Flexible leave policies, including paid health days
  • Equity program eligibility
  • Bonus eligibility reviewed at hire and annually at the Company’s discretion

Job type

Full Time

Experience level

Mid levelSenior

Salary

CA$83,000 - CA$101,000 per year

Degree requirement

Bachelor's Degree

Tech skills

Distributed SystemsDNSLinuxTCP/IPUnixC++

Location requirements

HybridBurnabyCanada

Report this job

Found something wrong with the page? Please let us know by submitting a report below.