Full Job Description
CACI Products Company specializes in designing and building hardware and software to meet our customers’ next requirement. We focus on offering devices that can be fielded immediately to meet the mission needs that lie directly ahead. Size, weight, power, and packaging are of paramount importance in everything we design and build. Our expertise allows us to rapidly provide these solutions in specialized electronic/mechanical design, embedded & application-level software, reverse engineering & protocol analysis, and RF signals exploitation and communications systems. Successful candidates must be willing and able to obtain a security clearance and pass a pre-employment drug screening.
We are currently seeking a Linux Application Developer to join our dynamic and growing team focused on expanding our mission critical product portfolio with innovative products. Our goal is to develop software solutions, for a purpose-built mobile platform, that add business value while enabling a best in class customer experience.
Our team consists of industry-leading developers, architects, and designers who use various innovative development methodologies and technologies to successfully deliver solutions, drive business results, and exceed customer satisfaction.
You are responsible for developing mission critical embedded Linux based user application software using industry best practices and in accordance with the project’s software development methodology. You will work with domain subject matter experts on designing and building an engaging and intuitive mobile experience while simplifying user workflow. The Application Developer supports the entire application lifecycle.
CACI Products Company will provide an introduction to our business, internal and external training, and a path to grow with the company.
About the role:
Participate in an Agile team environment via structured development lifecycles
Analyze, decompose system requirements, and define use cases
Perform system/application design
Develop and implement full stack (front-end and back-end) user applications
Conduct unit and integration testing of application modules
Accelerating incremental application development using processes such as decomposing a typical UX initiative into Agile sprints to deliver user and customer experience improvements faster.
Familiarity with cryptography, key fill, Type 1 certified products, and secure networking is highly desirable
Familiarity with Embedded/Mobile Software Application Development
Skilled communicator who enjoys team-based environment
Skills and Qualifications:
Bachelor of Science degree in Software Engineering, Computer Science, or an equivalent technical field.
2+ years developing Linux based user applications
DevOps concepts and tools, such as: GitHub, JIRA, Maven, Jenkins, Chef, Ansible, Docker
Database platforms, such as: Oracle, MySQL
Programming languages and related web technologies, such as: Angular 8/Modern Angular, Type Script /Java Script, HTML/SCSS, Node, NPM, Graphic Design Knowledge, Composition Design for Web/Mobile Backend, Go, Python, C++, C
Application architecture and systems engineering principles, to include micro service architecture, application design patterns, Agile development with Scrum, application security, developing system requirements, system design artifacts and models
Familiar with cross compilation, compilation frameworks, remote debugging
A desire to learn and keep learning!
We are proud to be an Equal Opportunity Employer and do not discriminate on the basis of race, religion, gender, gender identity, national origin, color, age, military service eligibility or veteran status, disability, sexual orientation, marital status or any other protected class. We encourage and support workplace diversity.