Software Developer and Tester
Reporting to the Columbus Software and Technology Manager, this role is responsible for real time data acquisition software development and testing. The right candidate will have an understanding of current software technologies and processes in a real-time Linux environment. Communication and strategic thinking are a must, as this position will be customer facing, and will lead multiple projects.
- Develop software in C to run engineering development testing and collect data, including communication with Linux shared memory, and testing equipment.
- Develop graphical interface programs in C (Qt) to enable end users to more easily configure tests and visualize output.
- Write tests for, and perform manual testing, of all the various parts of the suite of software.
- Work together with engineers and software developer teammates to plan and complete projects.
- Assist in establishing accurate timeline estimates while ensuring that projects remain on target to meet deadlines.
- Track and report the status of projects on various teams.
- Demonstrate competency to our commercial and government clients with the deployment of software and technology enhancements that are coordinated based on release schedules.
- Evolve the existing technical solutions and architecture with an eye on leap-frogging the competition.
- Enforces safety, health, and security rules.
Bachelor's degree in Engineering, Computer Science, or related field.
Minimum of 3 years experience in a software development organization, with at least 2 years of experience with an integrated development platform, such as Qt or .Net (WinForms).
- Experience in the development of software for low-level communications, direct device control/automation, and kernel/system integration strongly desired.
Experience in languages using C, C , Java, C# desired.
Experience delivering software, software development services, and/ or related software experience with a large government and/or enterprise project strongly preferred.
Requires understanding of the software development cycle, and various software development methodologies, and the tools that enable them, such as Subversion, git, JIRA, Jenkins, CMake, et. al.
Must have strong time management and problem solving skills.
Project management experience desired.
Experience solving complex and large-scare software problems.
A record successful delivery of software systems as an individual, team leader and or/ development manager.
A willingness to dive into software environments and technical issues as part of maintaining the skills necessary to manage and advocate products and projects.
Excellent written and oral communication.