Embedded Software Engineer
Posted 24 days ago
Embedded Software Engineer
Databuoy Corporation - Virginia (Vienna)
We are seeking a highly motivated, hands-on and skilled Embedded Software Engineer to join our growing team. In this role, you will be instrumental in developing and enhancing the software that powers our innovative acoustic sensing and IoT platforms. You will work within a collaborative environment, bringing cutting-edge technology to life from concept to deployment.
Required Qualifications:
Bachelor's degree or equivalent experience (4+ years) in Computer Science, Software Engineering, Electrical Engineering, or a similar field from an accredited institution. Experience in systems programming languages like C/C++, Rust or Go Proven experience with development for ARM Linux (e.g., Raspberry Pi, Beaglebone, STM32, etc.) or other headless embedded systems. Proficiency with GNU build tools (gcc toolchain, Makefiles, CMake). Development experience in at least one scripting language (e.g., bash, Python). Experience with version control systems for code management, specifically Git. Strong understanding of modern Linux environments, including network configuration, device drivers, and kernel fundamentals. Basic networking knowledge (IPv4, TCP, UDP, HTTP, SSH). Only candidates within a 40-mile radius of Vienna, VA, or willing to relocate will be considered for this position.
Preferred Qualifications:
Experience with building Linux Kernels, including kernel customization using tools like Buildroot or Yocto. Experience building kernel modules and device drivers for Linux, including creating device trees. Excellent understanding of/experience with bare metal computing platforms, interrupt handling and other hardware protocols like SPI, I2C, USB, etc. Familiarity with static and dynamic code analysis tools. Master’s degree in Computer Science or Electrical Engineering. Experience with building Linux Kernels, uBoot, or other bare-metal OSes. Experience developing applications for embedded systems. Ability to develop FPGA code in Verilog or VHDL is a plus. Experience with designing PCBs, board bring-up and hardware lifecycle is a plus. Experience with developing and automating testing frameworks for devices. Experience with DevOps tools, including Ansible, Jenkins, GitHub Actions, Circle CI, Prometheus, Grafana, or Logstash. Experience with containerization tools, including Docker. Experience with system architecture or microservices architecture. Experience with network and server infrastructure monitoring and management.