The company is looking for a Software Engineer Specialist to participate in and contribute to the planning, design, implementation, verification, deployment, and support of custom software components and applications. The role involves translating requirements into technical designs, implementing software components, testing, and addressing issues in production software.
Requirements
- Proficient knowledge of relevant technologies, software development methodologies, and programming languages
- Proficient knowledge of the principles, practices, and techniques of object-oriented design/development in a real-time environment
- Proficient knowledge of the principles, practices, and techniques of software unit, component, and integration testing
- Proficient knowledge of the principles, practices, and techniques of source code management and defect tracking
- Experience with Object Oriented development with focus on SOLID principals.
- C development and WPF/XAML experience..
- A strong understanding of design patterns and UML. TCP/UDP experience.
Responsibilities
- Participate and consistently contribute to planning, design, implementation, verification, deployment, and support activities for custom software components and applications.
- Interact directly with engineering team and program management staff to analyze and understand requirements
- Translate requirements into appropriate technical designs
- Effectively present technical designs to software engineering, program management, and other team members
- Implement requirements into software components and applications according to technical design
- Unit and component test software components and applications to ensure quality of deliverables
- Provide input and effort for the technical verification of all technical, functional and corporate requirements prior to delivery of software components and applications
Other
- Must Have the Ability to Obtain a DoD Security Clearance
- May perform task management and mentoring activities for other software engineers.
- Effectively manage multiple task assignments
- Mentor less experienced team members as appropriate
- Perform all job functions with a positive, professional attitude