vu@vutang:~$ cat jd.txt
Embedded Software Engineer
5G/6G Firmware Team · Viettel High Tech
Hiring for 2 levels: Fresher / Junior and Senior
open positions
Fresher / Junior
Bachelor's degree in a related field, solid C/C++ and Linux, and an embedded systems foundation.
Senior
3+ years in embedded systems, board bring-up on a high-performance SoC/MPU, and embedded Linux (U-Boot, kernel, Yocto).
at a glance
- team
- 5G/6G firmware, Viettel High Tech
- location
- Hanoi / Da Nang
- levels
- Fresher / Junior, Senior
- apply
- Email your CV
about viettel high tech
With more than 1,200 highly qualified personnel, Viettel High Technology Industries Corporation (VHT) has become a hub for numerous PhDs, Master's degree holders and engineers trained in developed countries such as the United States, France, the United Kingdom, South Korea and Japan, as well as leading universities in Vietnam. VHT is committed to developing telecommunications, civil and military products under the spirit of “Make-in-Vietnam, Made-by-Viettel”, aiming to fully master core technologies and contribute to the realization of a strong and prosperous Vietnam, striving to lead in technology and stand alongside advanced nations in the region and worldwide.
what you will work on
From the board up to the application, you work across the whole embedded stack.
- ApplicationC/C++ control modules, OAM, system state management
- Kernel & driversKernel configuration, HAL, device drivers
- BootloaderU-Boot, BootROM, DDR training, NAND/NOR, eMMC
- HardwareSchematic review, board bring-up, hardware validation
Full list of responsibilities
Embedded system design, development & optimization
- Hardware-software co-design: Collaborate on hardware design and perform direct schematic reviews for systems using complex SoC/MCUs (ARM, x86, PowerPC, etc.) to ensure seamless compatibility between hardware and software.
- Board bring-up & hardware validation: Lead the system bring-up process on new PCBA; ensure stable CPU initialization and successful deployment of operating systems (Embedded Linux, RTOS, etc.).
- Bootloader optimization: Customize and debug bootloader components (U-Boot, BootROM, etc.); master technical management and optimization of high-speed storage interfaces, including RAM (DDR training), NAND/NOR flash and eMMC.
- Kernel & driver development: Customize and configure kernels and build hardware abstraction layers (HAL/drivers) to get maximum chipset performance under real-world conditions. Develop and port device drivers for various hardware modules.
- C/C++ application development: Design and implement control application modules and system state management (OAM); develop logic algorithms to ensure precise, reliable device operation in accordance with product requirements.
Quality management & process
- Code quality & review: Establish coding standards and perform rigorous code reviews to ensure system security, high performance and long-term maintainability.
- Testing strategy: Propose and build comprehensive testing strategies, from automated testing (unit and integration tests) to on-target testing, ensuring system stability across all operational environments.
- Technical documentation & knowledge base: Lead the development and maintenance of standardized technical documentation, including architecture design, API specifications, detailed design documents and user manuals; ensure effective knowledge transfer within the team.
Research & strategic direction
- New chipset & hardware exploration: Proactively research, evaluate and benchmark emerging chipsets/SoCs (ARM, RISC-V, AI/IoT specialized chips, etc.) to advise on optimal hardware platforms for next-generation products.
- Tech roadmap development: Stay updated with pioneering technology trends (IoT protocols, embedded security, edge AI, etc.) and build technology roadmaps to maintain the product's competitive edge.
- Proof of concept (PoC): Directly develop prototypes on new chip platforms to demonstrate technical feasibility prior to mass production.
- Technical leadership: Serve as a subject matter expert; provide mentoring, knowledge transfer and troubleshoot complex technical challenges for the project engineering team.
requirements: fresher / junior
Academic foundation & expertise
- Education: Bachelor's degree in Electronics and Telecommunications, Embedded Systems, Information Technology, Computer Science or a related engineering field, with a GPA of 3.0 or higher.
- Core knowledge: Solid understanding of the following:
- Computer architecture & microprocessors: Deep knowledge of MIPS, RISC, CISC architectures; memory classification and instruction sets.
- Electronics & microelectronics: Proficiency in digital/analog electronics and microelectronics techniques (CMOS).
- Operating systems & networking: Fundamental principles of operating systems (OS), embedded systems and computer networks.
- Preferred (plus): Knowledge of next-generation telecommunications networks (3G/4G/5G). Professional networking certifications such as CCNA, CCNP, etc.
Technical & programming skills
- Programming languages: Proficiency in C/C++ (preference for candidates with a mindset for source code optimization in embedded environments).
- Algorithms & logic: Strong grasp of data structures and algorithms.
- Supportive skills: Proficient in Linux environments (terminal command line, shell scripting). Hands-on electronics skills (ability to read schematics, basic hardware measurement and testing).
Practical experience & projects
- Academic projects: Graduation thesis or major projects related to embedded system design using platforms such as MCU, SoC or FPGA. Bonus: hands-on experience with low-speed peripherals (UART, SPI, I2C, GPIO).
- Research & internship: Preference given to candidates who participated in university research labs, authored scientific papers/publications, or have internship experience at hardware/embedded software development firms.
Languages & soft skills
- English: Minimum equivalent of TOEIC 550. Ability to effectively read and understand technical documentation (datasheets, technical reference manuals).
- Attitude: Strong logical thinking, fast learner, capable of independent research, and highly persistent in debugging.
requirements: senior
Candidates must meet all the Fresher / Junior requirements above, in addition to the following:
Professional experience
- Seniority: Minimum of 3 years of professional experience in embedded systems development and embedded product deployment.
- Hardware foundations: Proven experience in board bring-up for at least one high-performance SoC/MPU family (e.g. ARM Cortex-A, ARM Neoverse, NXP i.MX, NXP Layerscape, or specialized network processors).
- Architecture mastery: Deep understanding of CPU architecture, memory management (MMU, cache), low-speed peripherals (UART, SPI, I2C, GPIO, timer, etc.) and high-speed interfaces (DDR3/4, PCIe, Gigabit Ethernet, USB 3.0).
- Preferred (plus): Significant contribution to the development of next-generation telecommunications equipment (4G/5G/6G).
OS & system components expertise
- Embedded Linux: Proficient in embedded Linux development, including toolchains, U-Boot, kernel porting, device tree, rootfs and the Yocto Project.
- Optimization: Extensive experience in customizing and optimizing Linux OS for high-performance and real-time application requirements.
Programming skills & tooling
- Software development: Expert-level proficiency in C/C++ for embedded systems and Linux-based environments. Familiarity with the DPDK (Data Plane Development Kit) library is a strong advantage.
- Build systems & automation: Proficient with build systems (compilers, Make, CMake); preference for candidates skilled in Python/shell scripting for task automation.
- Advanced debugging: Mastery of software debugging tools (GDB, Valgrind) and Linux kernel debugging (KDB, Ftrace). Deep hardware debugging: proficient in using JTAG and hardware measurement tools (oscilloscope, logic analyzer) to troubleshoot signal integrity or real-time execution issues.
- Process & workflow: Expert in Git and professional code review workflows. Experience in building CI/CD pipelines for embedded systems is a significant plus.
System design & documentation
- Hardware-software integration: Ability to analyze and provide critical feedback on schematics to ensure seamless hardware-software compatibility.
- Software architecture: Proven experience in designing scalable and maintainable software architectures.
- Technical documentation: Ability to author high-quality technical documents (architecture design, API specifications) with a scientific approach.
Leadership & languages
- Leadership: Experience as a technical lead for small teams or as a mentor for junior engineers.
- English proficiency: Professional fluency (capable of comprehending technical reference manuals and communicating directly with international chipset vendor support).
- R&D mindset: Strong research and development spirit; capable of exploring new chipsets/SoCs with limited documentation.
- Distinctions: Published research papers (journals/conferences) or registered patents are highly valued.