Embedded C Developer RTOS

Employer: Team Extension
Domain:
  • IT Software
  • Job type: full-time
    Job level: 1 - 5 years of experience
    Location:
  • BUCHAREST
  • nationwide
    Updated at: 21.09.2017
    Short company description

    Team Extension is a nearshoring and offshoring technology company based in Bucharest, Romania.

    Working with us, you will have the opportunity to work with a wide spectrum of clients and projects. Our clients include startups and Fortune 500 companies that are based in Western Europe and in the United States.

    At our company, we are building a team of smart, motivated people who are passionate about helping the business continue to soar to new heights. We are well funded and in hyper growth mode. Come join a team where you can truly make a difference.

    Requirements

    Extensive C development experience using a RTOS and concurrent systems
    Good knowledge of Linux and ideally some experience of Networking, Ethernet or TCP/IP
    Excellent record of academic achievement, having achieved a minimum 2.1 or above in Maths, Physics or Computer Science - ideally having gone to study at MSc or PhD level
    Strong proficiency in C, with fairly complete knowledge of the language specification
    Thorough knowledge of the standard library as specified by ISO and ANSI
    Good understanding of memory management in non garbage collected environments
    Knowledge of low-level threading primitives and real-time environments
    Familiarity with system call wrapper library functions
    Knowledge of writing native modules for high-level languages such as Node.js, Python, Go, etc.
    Familiarity with embedded systems design and low-level hardware interactions
    Knowledge of component data sheets and specifications
    Familiarity with language tools, such as Lint, Valgrind, etc.
    Proficient understanding of code versioning tools {{such as Git, SVN, and Mercurial}}
    Familiarity with continuous integration

    Responsibilities

    We are looking for a Embedded C Developer responsible for developing kernel modules, embedded systems, and libraries for high-level languages. Your primary responsibility will be to study the APIs of these different environments and apply your C skills to develop modules that are efficient, reliable, and easy to maintain.
    Design, build, and maintain efficient, reusable, and reliable C code
    Implement performance and quality modules
    Identify bottlenecks and bugs, and devise solutions to these problems
    Help maintain code quality, organization, and automatization