Bachelor's degree (BS) in a relevant field.
4-5 years of experience in software development.
Strong experience developing software for target Linux platforms.
Excellent knowledge of C, C++, Java, and Go for Linux-based systems.
Experience creating and maintaining shared libraries across multiple products and platforms.
Extensive experience with multi-threaded development and adherence to development best practices.
Strong hands-on experience with GitLab and GitLab runners for source control and CI/CD.
Solid experience working within Agile/Scrum methodologies.
Experience with at least one of the following development tools: CLion or Android Studio.
Excellent understanding of Linux platforms, permission models, and multi-process concepts.
Experience installing, managing, and developing Linux services.
Experience in at least one of the following: Go, Angular, or Rust development for target Linux platforms.
Strong network programming skills with client/server architecture experience.
Excellent knowledge of web server application development using HTML and one or more server-side languages such as PHP, Node.js, or Go.
2–3+ years of relational database experience, including designing data tables, creating and executing SQL programmatically, and coding for long-term database performance.
Good knowledge of virtual machines, containers, and virtual environments such as VMware ESXi and Kubernetes.
Good understanding of client/server architectures.
Good understanding of IP networks.
Good breadth of telecommunications technologies.
Fluency in English.
Proficiency with Linux, PCs, workstations, and mobile devices.
Working knowledge of Microsoft Office applications.
Ability and willingness to travel less than 10% as part of the role.
Ability to be legally authorized to work in the United States.
Willingness and ability to obtain a security clearance if required.