(Fresher/Junior/Senior) Embedded Linux/Software Engineer
- Source: LinkedIn
- Ban Vien Corporation
- On-site
- Ho Chi Minh City
- Full-Time
- Junior
Job Description
A - EMBEDDED SOFTWARE ENGINEER (MCU, RTOS, Linux OS)
1/ JOB DESCRIPTION
Contribute to embedded software for microcontrollers that support functions in modern vehicles. Gain exposure to the development lifecycle, with your responsibilities focused on a specific phase and MCU module based on your technical proficiency and domain experience.
Understand Software Requirements
- Analyze requirements for your assigned MCU software module to understand the functionality it needs to deliver.
Design & Develop Embedded Software
- Contribute to driver and software design, and implement embedded code for your assigned module.
Test Software Functionality
- Perform testing within your assigned scope to verify software behavior against requirements.
2/ REQUIREMENTS WHAT YOU’LL BRING
- Bachelor’s Degree or above in Electronic Engineering, Telecommunication, Computer Science, Computer Engineering, Automation, Information Technology or equivalent.
- Strong in C/C++ programming for Embedded Software Development.
- Experience in communication protocols (e.g., SPI, LIN, CAN, FR, ETH, etc.) and MCU peripheral devices (e.g., EEPROM, Flash, etc.).
- Experienced with firmware development and implementing hardware drivers and low-level code for device registers for microcontroller platforms.
- Experienced with Stack, Queues, Pipeline, Socket, Boot loader, secure boot.
- Experienced with embedded software development, Linux OS, RTOS.
- Capable of reading and understanding MCU hardware manual.
ADDITIONAL SKILLS WE VALUE
- Knowledge of scripting languages (e.g., Python, Unix Shell Scripts, Visual Basic, etc.).
- Familiar with source version control software (e.g., GIT, SVN, etc.).
- Familiar with CMMI and/or A-SPICE working environments.
- Experience in AUTOSAR standard.
- Good at problem analysis and solving.
- Good English language skills.
- Effective communication skills.
B - EMBEDDED LINUX ENGINEER
1/ JOB DESCRIPTION
Work across the Embedded Linux stack from bootloader and kernel integration to build environments, debugging, and release support.
Develop and maintain Linux platforms
• Develop, maintain, and support Linux Board Support Packages (BSPs) for SoC platforms.
• Perform kernel rebasing, version upgrades, and BSP integration.
Support builds and system integration
• Maintain Yocto Project builds and embedded Linux development environments.
• Support the integration of bootloaders, kernels, device trees, and middleware.
Debug and validate system behavior
• Verify Linux kernel functionality, device drivers, and peripheral features.
• Investigate and resolve software issues on ARM-based embedded platforms.
Contribute to reliable releases
• Collaborate with teams on software release and maintenance activities.
2/ REQUIREMENTS ⭐ WHAT YOU’LL BRING:
- Bachelor’s degree in Computer Engineering, Software Engineering, Computer Science, Electrical Engineering, or equivalent.
- Proficiency in C/C++ programming, including pointers, memory management, and basic data structures.
- Hands-on exposure to embedded Linux systems and ARM-based processors.
- Hands-on exposure to U-Boot, Linux kernel configuration, device tree, and device drivers.
- Comfort working in Linux command-line environments.
- Ability to read and understand hardware manuals, datasheets, and technical specifications.
- Practical exposure to debugging in Linux environments, such as using GDB for stepping through code or analyzing basic faults.
⭐ HOW YOU APPROACH THE WORK:
- Curiosity, a problem-solving mindset, and a strong willingness to learn.
- Clear written and verbal communication to document findings and collaborate with teammates.
- A proactive approach to asking questions, raising blockers early, and taking ownership of assigned tasks.
⭐ ADDITIONAL SKILLS WE VALUE:
- Knowledge of Yocto Project or Buildroot.
- Bash or Python scripting for automation and tooling.
- Experience with Git version control.
- Familiarity with Valgrind or other memory analysis tools for Linux user-space debugging.
C - EMBEDDED LINUX MIDDLEWARE ENGINEER
1/ JOB DESCRIPTION
Turn your C/C++ and Linux skills into middleware that helps embedded software components work together. Contribute across development, testing, and integration for System-on-Chip (SoC) platforms.
Build middleware and frameworks
- Design, develop, and test middleware and frameworks for SoC platforms.
- Develop sample ap…
Skills
- c10
- cplusplus
- Python
- visual-basic
- yocto-project
- linux-kernel
- buildroot
- ipc
- cmake
You missed this one - but you don't have to keep missing out. Try Club members get matched with open opportunities before they're gone, so you're always first in line, never last.
