Embedded Software Engineer

Full Time
  • Post Date: March 15, 2021
  • Apply Before: August 15, 2021
Job Description

Vacancy available for candidates proficient at C programming and embedded system product development.

Responsibilities:

Work as part of a team to design, develop, debug, test and support high-performance networking software.

Requirements:

  • Masters (desired) or Bachelors (required) degree in Electronics Engineering, Computer Engineering or Computer Science with relevant work experience.
  • Experience with embedded systems and embedded software development.
  • Proficient in embedded programming (C/C++) and scripting languages (e.g., Bash, Bourne shell, Python). Additional recommendations:
    • Assembler experience.
    • Experience with other languages such as ADA, Lua, Rust, VHDL and/or Verilog.
    • Experience with multi-threaded programming.
  • Experience with embedded operating systems platforms such as Linux, Unix and other.
  • Extensive experience with development and debugging on a Linux platform (GCC/G++, revision control systems, build systems, troubleshooting, debugging and profiling tools).
  • Extensive experience with designing and optimizing software to meet specified performance goals.
  • Knowledge of hardware architecture such as ARM, MIPS and X86.
  • Knowledge of major IP protocols, interfaces and hardware subsystems i.e., TCP, IP, Ethernet, ARP, ICMP and/or UDP.
  • Knowledge of network device operation such as parsing, classifying, filtering and forwarding traffic.
  • Knowledge of network switching and routers, L2 bridging, STP and L3 routing.
  • Knowledge and experience regarding the implementation of network protocols, device driver and network stack internals for Linux.
  • Ability to work in a multi-disciplined team environment is required.
  • Strong oral and written communication skills are required.

Additional desired competencies:

  • Knowledge of network protocols.
  • Knowledge of virtualization technologies.
  • Experience with Linux kernel development.
  • Experience in cryptography and network security (e.g., IPsec, SSL).