Job Description SummaryResponsible for designing, building, delivering and maintaining software applications & services. Working in the areas of tools, simulations, lab environments, and application. Responsible for leading software lifecycle including activities such as requirement analysis, documentation/procedures, software implementation, testing, integration, qualification and certification.Job Description
Roles and Responsibilities
In this role, you will:
• Have awareness of SDLC and methodologies like Lean/Agile/ Software and Product Security, Scalability, Documentation Practices, refactoring and Testing Techniques.
• Ability to write code in C (HLP) that meets standards and delivers desired functionality using the .NET technology.
• Ability to write code in WPF and Python to develop test scripts and run them using the .NET technology.
• Ability to write code in C++ and C that meets standards and delivers desired functionality using the .NET technology.• Identify and lead the scope of the work, provide initial estimate and justify the estimate with facts• Demonstrate the understanding of Agile software development lifecycle and able to distinguish the core inputs and outputs in each cycle.• Lead in technical discussions; participate in technical designs and present technical ideas through white boarding• Lead and Execute in a fast pace delivery mode and focus in delivering tasks to meet the product release goal
• Experience with ALM DOORS platform to write test procedures.
• Experience leading projects using the principles of OOP.
• Experience using version control software (GitHub).
• Experience using continues integration tools (Jenkins).
• Previous experience using the principles of UML and XML languages.
• Ability to explain and handle different design patterns.
• Previous experience in the Aviation Software Industry. Understand some of the Avionics products. Experience with Avionics protocols (ARINC 429/664) and Other communication protocols like Analogs and Discrete.• Maintain code quality through best practices, unit testing and code quality automation.• Seek and provide feedback on design and development.• Demonstrate the ability to make informed technology choices after due diligence and impact assessment.• Understand whole product, its modules and the interrelationship between them while being an expert in the assigned component or module.• Help in designing interfaces and information exchange between modules.• Be an expert in writing code that meets standards and delivers the desired functionality using the technology selected for the project• Drive design reviews, define interfaces between code modules, and applies existing technology to designs.• Be an expert in assessing application performance and optimizing/improving it through design and best coding practices.• Be an expert in core data structures as well as algorithms and has the ability to implement them using language of choice• Be responsible for providing technical leadership and defining, developing, and evolving software in a fast paced and agile development environment using the latest software development technologies and infrastructure• Provide guidance to a team of 5 to 7 developers with either planning and execution and/or design architecture using agile methodologies such as SCRUM• Work with Product Line Leaders (PLLs) to understand product requirements & vision
Education Qualification
Bachelors Degree in Computer Science or “STEM” Majors (Science, Technology, Engineering and Math) with advanced experience.
Desired Characteristics and Technical Expertise:• Strong knowledge of Object Oriented Analysis and Design, Software Design Patterns and .NET languages/coding principles
• Understand and ability to write code for Avionics configuration tools for aircraft components.
• Desirable experience in Avionics Industry.
• Experience with complex software tools architectures that interact with full integrated systems, including hardware and embedded software.• Experience developing simulations software tools for Avionics.
• Understand and use avionics protocols like A429, A664, A825.
• Prior experience with scripting languages (Shell, Bash, Perl).Business Acumen:• Strong problem solving abilities and capable of articulating specific technical topics or assignments• Experience in building scalable and highly available distributed systems• Expert in breaking down problems and estimate time for development tasks• Evangelizes how our technology solves customer problems from a technology and business perspectiveLeadership:• Demonstrates clarity of thinking to work through limited information and vague problem definitions• Influences through others; builds direct and "behind the scenes" support for ideas• Proactively identifies and removes project obstacles or barriers on behalf of the team• Shares knowledge, power, and credit, establishing trust, credibility, and goodwillPersonal Attributes:• Able to work under minimal supervision• Excellent communication skills and the ability to interface with senior leadership with confidence and clarity• Able to work well with global teams, including time-zone flexibility• Skilled in providing oversight and mentoring team members. Shows ability to effectively delegate work
NoteThis Job Description is intended to provide a high level guide to the role. However, it is not intended to amend or otherwise restrict/expand the duties required from each individual employee as set out in their respective employment contract and/or as otherwise agreed between an employee and their manager.
Additional Information
Relocation Assistance Provided: No