Contact us

Posted on 2017-10-31

The Software Engineer is responsible for the implementation of the Triphase core IP on server and embedded hardware platforms. He or she translates generic concepts such as 'real-time program threads' to a practical implementation. He or she also takes the vision and strategy of Triphase into account while selecting suitable technologies for implementing the frameworks.

The Software Engineer also provides support for application platform issues, primarily to the test and support teams, and to the Triphase application development team.

The Software Engineer is supported by the hardware design and test and support teams and is supervised by the Chief Technology Officer (CTO).

Primary tasks

  • design and maintain the user interface framework used by the application engineers to efficiently create user interfaces
  • design and maintain the real-time software framework which supports the hardware interface technology and allows both the applications engineers and the customers to efficiently create power conversion applications. This includes the Linux kernel configuration and the application program interface (API)
  • design and maintain software drivers for the Triphase network interface cards in cooperation with the FPGA engineering team
  • select and configure suitable hardware for the real-time processing platform. These are embedded platforms such as ARM and soft core processors like Intel Nios II
  • package the frameworks for updates by customers
  • support the test and support engineers and use their feedback and bug reports to improve the frameworks.

Secondary tasks

  • assist hardware and application engineers while debugging new applications;
  • support the customers with the frameworks, if and when the application, support or test engineers determine that it is a framework issue
  • interventions to the company network and server infrastructure.

Skills required

  • excellent knowledge of efficient software design, preferably with experience in real-time programming
  • good knowledge of embedded systems architecture and PCI Express
  • good knowledge of the Linux operating system. Able to confidently configure and compile Linux kernels and kernel modules
  • good knowledge of programming languages (Qt, C, C++, Java, JavaScript, Python) and programming concepts (versioning, debugging, packaging)
  • good knowledge of networking applications and web applications
  • good knowledge of setting up and maintaining a company Linux server
  • good knowledge of Linux scripting (bash and Perl) to automate recurring tasks
  • able to work in a multidisciplinary team of hardware, application software and application design engineers
  • able to quickly determine the best course of action in case of a problem, both at the company's and the customer's premises.

Additional

  • working from home is possible
  • eligible for participation in the Triphase warrant plan.

Interested? Send your letter of interest and resume to hr@triphase.com