Software Engineer, Embedded / Linux
Panasonic Avionics Corporation
About the Role
Panasonic Avionics Corporation is seeking a curious, hands-on Software Engineer to join their team. This role involves developing and supporting software used for configuring, testing, validating, and troubleshooting complex networks of embedded systems.
Key Responsibilities
- Design, develop, and maintain software applications and automation tools for engineering, manufacturing, and field operations.
- Troubleshoot software, Linux, networking, and hardware-interaction issues.
- Work with embedded devices, networked equipment, and hardware peripherals.
- Collaborate with engineers across multiple disciplines to solve challenging technical problems.
- Create technical documentation, troubleshooting guides, and deployment procedures.
- Continuously learn and apply new technologies.
Requirements & Tech Stack
Software Development
- Experience with one or more programming languages; C/C++ preferred.
- Understanding of basic software design and object-oriented programming principles.
- Git and modern source-control practices (GitLab, CI/CD pipelines, code reviews).
Linux and Systems
- Familiarity with application development on Linux platforms.
- Understanding of Linux operations and basic operating-system fundamentals.
- Exposure to Android application development is a plus.
- Exposure to virtualization and container technologies such as KVM, libvirt, and Docker is a plus.
- Exposure to computer vision technologies such as vision models, machine learning, and image processing is a plus.
Networking
- Basic understanding of publish/subscribe architectures.
- Understanding of TCP/IP fundamentals and basic familiarity with DHCP, routing, switching, bridges, and VLANs.
- Familiarity with network diagnostic tools such as tcpdump or Wireshark is a plus.
Embedded Systems and Hardware Integration
- Exposure to embedded Linux development.
- Basic understanding of hardware components, block diagrams, and schematics.
Problem Solving and Communication
- Accurate, thorough, and clear technical documentation.
- Strong written and verbal communication skills.
- Ability to work collaboratively.
Qualifications
- Bachelor’s degree in Computer Science, Software Engineering, Electrical Engineering, or a related field, or equivalent practical experience.
- 0-3 years of proven experience in software engineering with demonstrated depth in Linux systems and software development.
- Relevant experience may include internships, coursework, research, open-source contributions, or personal projects.
- Experience with machine learning or AI-assisted tooling is a plus.
- Curious, detail-oriented, and self-driven.
- Willingness and ability to travel domestically and/or internationally (up to 5% of the time).
- Ability to work both independently and as part of a team.