Embedded Linux Developer

Job description

Railnova is opening a new position for a Linux Embedded developer. As we are growing, we are building a small team of 4 for the embedded function; at the crossroad with the Railster our hardware product, and our different software solutions for predictive maintenance in the railway industry. Do you like trains? Electronics? Linux? You will start by learning from the Hardware and Software teams, to discover our products and interfaces. Once onboard, it will be your turn to support them, develop your embedded team, and start assisting the clients as well. 

You will mostly work on Railster OS, a custom Linux distribution for our Zynq (ARM+FPGA) based boards. In this context you will:

  • Write new and modify existing applications to monitor the board itself, and gather data from all sorts of trains worldwide

  • Make the required software integration for new hardware revisions of the boards

  • Investigate hardware issues and propose software workaround to keep our installed fleet up && running

  • Regularly apply security and improvement updates to 3rd party packages

  • Modify Linux device drivers and userspace hardware utilities

  • Peer-review code changes and issues

  • Support our project management and sales teams to offer new functionality to our customers

  • Support our aftersales and QoS (Quality of Service) team to help diagnose and fix issues remotely

  • Write documentation and release notes for new versions of Railster OS

  • Roll out software updates on the installed device, and regular monitoring of the fleet

  • Possibly work with open source communities and upstreaming some work.

Requirements

  • Solid programming skills in C, shell script and Python for POSIX systems
      • Bonus point for experience with Lua or other programming languages

      • Bonus point for experience with reactive programming (Rx)

    • Understanding of cross-compilation toolchains and build systems, such as Buildroot, Yocto or PTXdist

    • Knowledge of the Linux kernel configuration (KConfig) and device tree language
      • Bonus point for experience with bootloaders such as U-Boot or Barebox

    • Experience with IP networking (TCP, UDP, FTP, HTTP, MQTT, modbus, OPC-UA, ...) and analysis tools (tcpdump, wireshark)

    • Bonus point for experience working with FPGAs and associated device drivers

    • Bonus point for experience with web servers and web applications, such as Django

    • Bonus point for experience with SQL and data analysis in Python

    • Bonus point for experience with electronic instrumentation (oscilloscopes, logic analyzers, ...)

    • Bonus point for experience with digital electronics, reading schematics and datasheets

    • Bonus point for experience with microcontroller programming, preferably with an embedded OS like ChibiOS, Zephyr or FreeRTOS

    • Bonus point for experience with IoT security (PKI, user management, ISO27k)

  • Preferably lives in Belgium, or able to come to the office, in Brussels, as frequently as needed to get the required hardware to work

  • Human skills: curious, independent learner, team player, autonomous and good written communicator


Why Railnova ?

Railnova has a work culture focused on autonomy, creativity and everyday improvement. We implemented an asynchronous way of managing tasks, enabling uninterrupted focus time and avoiding internal meetings and e-mails. You’ll be given space to grow as part of a highly-skilled cross-functional team. On top of that you’ll get:

  • balanced work environment with 40 hours per week, 32 days of paid holidays

  • You have the choice of being either fully remote (in Europe), or partial remote, or full time in our offices near Brussels South Train Station (when sanitary conditions allow for it).

  • Budget and time to attend conferences, workshops and online classes

  • Smartphone, laptop, and screens of your choice (MacBook, Linux, Windows)

  • You'll work with sleek and modern apps (Slack, Basecamp, Intercom, Pipedrive, Github, Dropbox, Docusign, Google docs)

  • Extra healthcare DKV insurance, transport card, company car, bicycle plan, and meal vouchers

  • Competitive pay and benefits package with real year-on-year remuneration growth.

How to apply ?

The application process is handled as follows:

  • Submit your written application via the “Apply for this job” button and carefully craft your answer

  • The hiring manager and the HR team evaluate your application within 15 days of your application. At this stage, we are looking for strong written communication, critical thinking, and experience.

  • Interview with the Hiring manager and the HR manager

  • Case study exercise

  • Final interviews and team presentation

You can ask questions at any time during the application process simply by responding to the confirmation email you’ll receive after submission.