Senior Software Engineer- Embedded and Network Programming

Sr. Software Engineer - Embedded And Network Programming


Location:  Waterloo, Canada



At McAfee, we live for the challenge of protecting and liberating our customers by staying ahead of the bad guys in our relentless search for safe. And in a world where computing devices are everywhere, delivering on this mission has become imperative. There has never been a better time to be part of McAfee! We are working on new and exciting products & services that are built on cutting edge technologies. Do you want to work in a fun and challenging area with passionate and creative people dedicated to protecting end-users as they enjoy their digital life?  If the answer is yes, then this role is for you!

Most consumers today use home gateway and other devices provided through various ISPs to connect their digital devices to the internet. Home Gateway team intends to build a consumer security software solution on the home gateway. On a broader level the group attempts to gain entry into the IoT segment and open up the possibilities of securing large number of consumer IoT devices.

We aspire to hire a strong software developer to help us build a consumer software security solution on the home gateway.

An ideal candidate would be adept at C/C++ and have expertise in the Linux platform. He would have firm understanding of networking concepts and protocols viz. Layer 2-4. Team will be constantly working across different router platforms. Candidate should adapt learning across new platforms and have a short learning curve for the adoption.

A prior understanding of the software stack for home gateway viz. WRT etc. would be a big plus.

We intend to use C/C++ on router platforms (predominantly Linux based) and Lua scripts where applicable. The gateway systems will interact with a server back-end that would support analytics powered by big data systems.

We are looking to have engineers with strong technical aptitude to be part of our team. If this is an area that interests you we welcome you to apply for this position.

This position will be based out of our Waterloo office in Canada.

Key responsibilities:

  • Design and development on embedded platforms using C/C++ on Linux, LUA Scripts etc.
  • Creating detailed design specifications.
  • Research and innovation on the embedded platform to find solutions to challenging technical problems.
  • Participation in an Agile Development in SCRUM method.


  • Bachelor of Engineering in Computer Science or equivalent.


  • Min. 8-10 years of software development experience
  • Min. 5+ years of experience on platforms involving routers, gateways or other networking enabled devices
  • Hands-on and proficient in C/C++ on Linux distributions
  • Experience with Lua and Shell scripting platforms
  • Sound expertise in Linux. Scripting, Debugging & Troubleshooting 
  • Sound understanding of Networking Concepts and configuration
  • Sound understanding of routers, bridges
  • Sound understanding of protocols such as DNS, HTTP, SSL, REST
  • Experience with packet sniffing tools such as Wireshark and tcpdump
  • Experience with OpenWRT will be an advantage
  • Understanding of firewalls, IDS is preferable
  • Knowledge of DPDK systems is preferable
  • Excellent knowledge in OOAD & design patterns

McAfee empowers businesses, the public sector, and home users to safely experience the benefits of the Internet. The company delivers proactive and proven security solutions and services for systems, networks, and mobile devices around the world. With its visionary Security Connected strategy, innovative approach to hardware-enhanced security, and unique Global Threat Intelligence network, McAfee is relentlessly focused on keeping its customers safe.