Nokia
OLAN C/C++ Embedded Linux Software Engineer
NokiaBelgium1 day ago
Full-timeEngineering, Information Technology
Job Description

We are flexible team with a passion for embedded Linux SW development. We are interacting closely with the hardware team and with our application development colleagues. We are working in an agile manner.

You’ll get ample opportunity to get acquainted with the organization, our way of working and products. During this training period, the team will support you with specific on-hands / on-the-job training. Next to that, you will have a wide variety of high-quality on-line training material at your disposal.

In our team you will contribute to the development of real time embedded software for our existing and new to be developed hardware platforms. You will also contribute to the selection and maintenance of the needed FOSS to support the development and also the development of cloud based applications.

The goal is to bring our product innovations and evolutions to the market faster and at higher quality than the competition as part of a multi-disciplinary agile team of senior experts and supported by state-of-the-art development and test technologies, tools and processes

How You Will Contribute And What You Will Learn

  • Clarify customer requirements together with the product owner: understand new features, use cases and reflect on possible failure scenarios to improve architecture at the start of development
  • Acquire a thorough insight into a wide variety of hardware components, going from simple i2c temperature sensors, over persistent storage devices (eMMC, NOR) to full Systems-on-Chip (typically supported by a reference design) and research how these components fit into new to-be-developed productsDesign SW architecture (i.e. definition of modules, classes, interfaces, task priorities, concurrent access,…)
  • Design generic SW running on different processor architectures: single/multiple core, Arm, MIPS, PPC, …
  • Be accountable for the long-term quality of the software delivered
  • Interact with project managers to give regular updates of identified issues
  • Write C / C++ code, makes files, scripts, …
  • Remove memory leaks by using commercial tools
  • Write test cases that validate their written code, and automate them
  • Estimate and measures the consumed CPU cycles and on-board memory
  • Troubleshoot software on target hardware and in a simulation environment

Key Skills And Experience

  • Knowledge of real-time operating system concepts (interrupts, tasks, concurrency);
  • Hands-on experience with C (and C++) is indispensable Knowledge of FOSS (Buildroot, Linux kernel, (GNU cross compilation) toolchains);
  • Knowledge of cloud concepts;
  • Genuine interest in new technologies;
  • Ability to work fluently with Linux (as operating system);
  • Eagerness and agility to learn fast and be challenged on a daily basis
  • Passion in handling complex systems and projects
  • “Out-of-the-box” thinking
  • The ambition to work autonomously after the needed training
  • Fluency in English

Key Skills

Ranked by relevance