Software Engineer

Donatech Corporation

Sterling Heights, MI

JOB DETAILS
JOB TYPE
Full-time
SKILLS
Architectural Analysis, Auditing, Business Solutions, C Programming Language, C++ Programming Language, Code Reviews, Communication Skills, Corrective Action, Cross-Functional, Customer Relations, Debugging Skills, Design Evaluation, Earned Value Management (EVM), Electricity, Embedded Software, Engineering Management, Ethernet, Functional Programming Languages, Government, Hardware-Software Integration, Integration Testing, Internet Security, Internet/IP Telephony, Leadership, Linux Operating System, Mentoring, Metrics, Object Oriented Design (OOD), Object Oriented Development, Presentation/Verbal Skills, Problem Solving Skills, Product Safety, Product Support, Progress Reports, Project Planning, Project Schedule, Project/Program Management, Python Programming/Scripting Language, Quality Assurance Software, Realtime Operating System, Record Keeping, Requirements Management, Risk Management, Safety Engineering, Safety Training, Sales Management, Software Administration, Software Architecture, Software Architecture Design, Software Configuration Management, Software Development, Software Development Lifecycle (SDLC), Software Engineering, Software Evaluation, Software Porting, Software Testing, Statement of Work (SOW), System Readiness Review (SRR), Systems Engineering, Team Lead/Manager, Team Player, Technical Presentation, Technical Support, Technical/Engineering Design, Test Plan/Schedule, Test Readiness Review (TRR), Test Scripts, Testing, Time Management, Unit Test, Verification Plans, Willing to Travel, Writing Skills
LOCATION
Sterling Heights, MI
POSTED
1 day ago
Position would require the candidate to be a W2 employee of Donatech. S Citizenship Required. • Has knowledge of the full software development lifecycle. • Has experience working on programs involving the development, maintenance, upgrade and porting of embedded product software and/or product support software to enhance, implement and support project/system functionality for the assigned technical effort. • Mentors less experienced software test engineers to help develop their software test capabilities and troubleshooting and problem-solving skills. • Collaborates across other engineering disciplines such as Mechanical, Electrical, Controls, and Systems. • Ensures that technical approach is consistent with established engineering principles and practices. • Ensures that product outcomes meet customer needs and that customer and company technical, system, performance, process, and quality requirements are met. The Team Leader will: • Oversee the associated software engineering efforts, including estimating, planning, requirements analysis, architecture, design, implementation, unit testing, hardware/software integration, integration testing, simulated flyout testing, and testing at the range. • Monitor and control execution of software engineering efforts with appropriate corrective actions as needed to keep the efforts on track with responsibility for technical, cost, and schedule performance. • Support the software verification lead in areas to include software verification planning, software verification environment concepting/design, and the development, execution, debugging and review of software verification test scripts and procedures. • Ensure that your team supports Software Quality Assurance and Software Configuration Management audits and activities. • Coordinate with Safety Engineering organization to ensure that software requirements development and software safety efforts are completed and recorded accurately and in a timely manner to correctly drive software level of rigor requirements for software architecture, design, implementation, integration, and verification work products associated with safety related or safety critical software requirements. • Achieve on-time delivery of contract deliverables with acceptable quality and 90%+ first pass customer acceptance. • Ensure that your project team executes with appropriate process discipline and rigor in accordance with tailored Business Management System (Client) Procedures, as tailored by your software IPT Lead and approved by functional management. • Oversee Control Account(s) or Work Package(s) as assigned, overseeing tasks, monitoring and reporting progress, and taking corrective action as needed to meet cost, quality, performance, and schedule constraints. Provide periodic estimates at complete (EAC) as required to support the EVMS reporting for each contract or work directive assigned to you. • Plan the software project schedules and builds in support of product level development schedules. • Work with your software IPT lead and PEM(s) to plan formal software development milestone reviews with United Stated Government (USG) customer representatives, including System/Software Requirements Review (SRR), Preliminary Design Review (PDR), Critical Design Review (CDR) and Test Readiness Review (TRR). Establish a work-split with your software IPT Lead for developing and presenting the software engineering content for these milestone events. • Evaluate software requirements to ensure that they are consistent with higher level performance requirements, customer requirements, and statement of work or other applicable contractual documents. • Coordinate development work with the software Architect and evaluate designs to ensure technical outcomes are consistent with customer needs and established requirements. Software leads are responsible for ensuring the involvement of Software Functional Management and the Munitions Software Architect in reviewing and approving software architecture and significant design work. • Guide the project team in collaborative problem solving, involving relevant stakeholders, to include software architecture representation as appropriate. • Work collaboratively to resolve conflicts between subsystems or disciplines to the benefit of system performance, quality, reliability, and cost. • Plan and ensure appropriate engagement of stakeholders in the activities of the software projects, referencing the project's stakeholder matrix and ensuring involvement of stakeholders, including systems and safety engineering as well as software architecture. Obtain the stakeholder matrix from your software IPT Lead. • Elevate issues and questions defining/modifying/affecting product behavior to the appropriate IPTs for resolution in a forum including stakeholders from systems, safety, and other relevant engineering disciplines. • Proactively communicate with multiple leaders, to include your Software IPT Lead, Functional Manager, Program Engineering Manager(s), and Program Manager(s). • Promptly notify management of emerging risks, issues, and opportunities and elevate as necessary to ensure awareness. • Provide clear, concise work direction to project personnel. • Apply knowledge of multiple engineering disciplines, consideration of customer and other stakeholder inputs, and in-depth knowledge of assigned product or technology area in guiding project direction and outcomes. • Ensure all Cybersecurity efforts are coordinated within the Software domain. • Regularly prepare and present project metrics and technical status at formal milestone reviews, technical interchange meetings, and IPT meetings with customers and teammates as well as internal reviews with both project and functional management. • Plan and manage internal and external resources to meet project obligations and objectives. Includes coordinating with multiple functional and project managers to identify and acquire internal or external resources. • Provide unbiased and constructive Performance and Development Review (PDR) inputs regarding objectives and performance for assigned project personnel. • Continuously maintain and enhance the technical reputation of client with customers and industry. • C and C++ programming • Python programming • Development of software applications on Linux Operating Systems or bare-metal real-time application development • Object Oriented design and development experience • Familiarity with Ethernet communications. • Exceptional communication (verbal and written) skills are a MUST • Ability to solve basic technical design and development problems • Ability to develop and maintain effective relationships with customers to solve technical problems • Ability to travel to customer sites Required Team Leader Skills include: • Working knowledge of Earned Value Management System (EVMS) and Control Account Manager/Work Package Manager duties. • Ability to conduct effective meetings, discussions, and presentations. • Experience leading a small group of developers. Minimum of 6 years of experience in real-time embedded software development and/or software testing, can be 4 years with a master's degree; or 2 years with a Ph.D. achelor's degree in STEM field

About the Company

D

Donatech Corporation