Jobs Warehouse .co.uk

C++ Embedded Software Engineer | Job in East Sussex

  • Expertise in C++ Programming: Proficient in writing efficient and maintainable C++ code for embedded systems. Experience with both C++98/03 and C++11 or higher is desired.

  • Embedded Systems Development: Strong understanding of microcontrollers, microprocessors, and DSPs. Familiarity with various development boards such as ARM Cortex-M, STM32, and AVR is essential.

  • Real-time Operating Systems (RTOS): Experience with RTOS like FreeRTOS, VxWorks, or Nucleus is highly desirable. Ability to write device drivers, manage system tasks, and handle interrupts is crucial.

  • Low-Level System Programming: Familiarity with assembly language (ARM, AVR) for optimizing critical sections of code.

  • Embedded Linux: Experience in developing and debugging applications on embedded Linux platforms. Knowledge of Yocto Project or Buildroot is advantageous.

  • Version Control Systems: Proficiency in using Git or other distributed version control systems for software development and collaboration.

  • Debugging Tools: Familiarity with debugging tools like GDB, JTAG, and oscilloscopes. Experience with cross-compilers is also desirable.

  • Networking Protocols: Knowledge of common networking protocols such as TCP/IP, UDP, HTTP, and SSL/TLS for embedded systems is beneficial.

  • Cryptography: Understanding of cryptographic algorithms (AES, RSA, ECC) and secure programming practices is a plus.

  • Testing and Debugging: Ability to write automated tests and perform unit testing using tools like Google Test or Boost.Test. Knowledge of software debugging methodologies and techniques is essential.

  • Problem-Solving: Ability to break down complex problems into manageable tasks, analyze potential solutions, and develop effective strategies for implementation.

  • Collaboration: Strong collaboration skills with the ability to work effectively in a team environment, communicate ideas clearly, and contribute constructively to group discussions.

  • Attention to Detail: Meticulous attention to detail in the development, testing, and deployment of software applications.

  • Time Management: Ability to manage multiple tasks simultaneously, prioritize effectively, and meet project deadlines.

  • Continuous Learning: Commitment to staying updated with the latest developments in C++ and embedded systems technology through self-study, attending conferences, and participating in online communities.

  • Documentation: Strong documentation skills to create clear and concise technical documents for team members, stakeholders, and future developers.

  • Adaptability: Ability to adapt quickly to changing requirements or technologies and learn new tools and techniques as needed.

  • Quality Assurance: Commitment to delivering high-quality software by following best practices in software development, testing, and quality assurance.

Postcode: TN
Employment Type: Full-time
Job Location Type: On-site

Additional Information

Job Designation: C++ Embedded Software Engineer

Experience Requirements: 2 years experience required

Work Hours: 38

Qualifications: Bachelor's In Engineering, C++98/03, C++11 Or Higher, Arm Cortex-m, Stm32, Avr, Freertos, Vxworks, Nucleus, Assembly Language (Arm, Avr), Embedded Linux, Yocto Project Or Buildroot, Git Or Other Distributed Version Control Systems, Gdb, Jtag, Oscilloscopes, Cross-compilers, Tcp/ip, Udp, Http, Ssl/tls, Aes, Rsa, Ecc, Google Test Or Boost.test



Search Tags

C

Explore job opportunities for C

View Jobs