You are here

Share this page on Twitter

Share this page on Facebook

Share this page on LinkedIn

Share this page by email

 Facebook

 Twitter

 Google +1

 Delicious

 StumbleUpon

 Digg

 Reddit

 LinkedIn

About
Careers

Senior Software Engineer with FPGA

Senior Software Engineer with FPGA

Department

  • Software

Reporting to

  • Director of Software Engineering

Overall purpose of job

  • Writing the software that runs CBNL’s VectaStar range of point-to-multipoint microwave radio equipment. Write new features, fix existing bugs; mostly in C on embedded Linux and Verilog on our Ethernet switching FPGA. Some scripting in Python will also be required.

Major responsibilities and tasks

  • Fix bugs and write new features for the VectaStar product
  • The bugs and features are in C, Python & Verilog. There is some Python too
  • Work with the rest of the Software team (other software engineers as well as DSP, FPGA, Radio and other specialists) to collaborate on development projects
  • Work closely with the System Test team to keep the quality of software high and investigate thorny problems together
  • Work with Support and Product Management to make sure the software delivered meets the customer’s needs, that we produce the right specifications at the right time and that we deliver to the specifications we promise
  • Follow the processes of the team and company, but be willing to improve them.

Competencies (technical, managerial, personal skills and relevant experience)

Essential

  • A good degree in an applicable subject (Computer Science, etc) and five years’ relevant experience
  • Very strong C skills, preferably in an embedded or other constrained-resource environment
  • Previous experience in development for Linux at the low level (eg daemons, drivers, kernel development)
  • Strong FPGA development skills (Verilog), preferably Xilinx
  • Experience with git, or at least other version control tools
  • Knowledge of network protocols, the lower level the better
  • Happy working with large, existing code bases rather than fresh-ground development.

Desirable:

  • Python
  • GTK
  • OpenEmbedded
  • Linux device drivers, especially network drivers
  • Make and complex build chains built around it
  • Perl
  • Radio and/telecommunications product development
  • SNMP
  • Desire to improve processes and ways of working.