Software Architect
- Full-Time
- Melbourne, FL
- Thales Avionics, Inc. (IFE)
- Posted 3 years ago – Accepting applications
Thales people architect solutions that enable two-thirds of planes to take off and land safely. We create in-flight entertainment systems that engross 50 million fliers every year and we develop the avionics that control the world’s largest commercial aircrafts. Our simulators train the next generation of pilots for fighter jets, transporters and search and rescue helicopters. And, together, each and every member of our aerospace team makes a difference.
TOGETHER WE MAKE THE BIG AMBITIONS OF TOMORROW HAPPEN TODAY
When you rely on airlines to connect you in flight, you rely on Thales. In an increasingly fast paced world, we make the unpredictable, predictable by connecting and entertain passengers to make your life better. Combining a diversity of talents, we master the decisive moments that matter to passengers and airlines. Whatever it takes.We are currently looking for a Software Architect to join Thales in Melbourne, FL. The Software Architect is responsible for designing and implementing our next generation In Flight Entertainment and Connectivity (IFEC) product suite. The candidate must be a proficient technical leader and have extensive knowledge of software systems that utilize Linux platforms, and multi-tiered, client-server technologies. Experience in developing complex C/C++ applications on the Linux platform is required. Experience in media management, streaming and related areas is a plus. Candidate must have experience in software architecture design and working knowledge of software design patterns. Candidate must also possess excellent communication skills that will help in the job of leading, and facilitating discussions between stake holders. The Software Architect also has software development responsibilities for prototyping new features. The Software Architect will work as part of the Scrum development process.
Key Responsibilities:
Develop the software architecture for the Connectivity product lines
Design and develop components and applications in an agile software development process
Communicate the software architecture to other engineers and management via presentations, architecture documents/diagrams, and software requirements
Analyze existing designs and define and implement improvements to the existing Connectivity designs
Write the use cases, user stories, and software requirements, and allocate them to the functional components as necessary
Create proof-of-concepts as necessary to demonstrate new ideas/technologies and architectural concepts
Participate in detailed design and code reviews for compliance with the defined software architecture
Recommend and develop architectural and detailed design patterns that can be used by other members of the development teams
Define interfaces/APIs between software components
Ensure the software implementation is in line with the proposed software architecture and recommended design patterns
Interface with Product and Program Management teams to define and estimate the work scope of new projects and features
Provide technical leadership to junior software engineers in the areas of software design and implementation.
Required Skills and Experience
Bachelor of Science Degree in Software Engineering, Computer Science or related degree with a minimum of eight (8) years of experience, or a Master’s Degree in Software Engineering, Computer Science or related field with six (6) years of experience
A minimum of eight (8) years of experience in software systems development
Experience with Microsoft software such as Excel, Word, Access, PowerPoint, and Project
Experience with several software development environments including C++, Linux, RTOS, databases
Experience with all aspects of software development life cycle, particularly:
Requirements analysis (DOORs, Jama or similar tools )
Design Methodologies (Object Oriented, UML, Iterative, Agile preferred)
5-8+ years of C++ programming, C, shell scripting, networking protocols, audio & video distribution, and database management
Software Configuration Management – experience with GIT (Stash/BitBucket) preferred
Experience with System Integration & Test – problem solving and defect resolution
Experience with Object Oriented Programming concepts and design patterns, and abstraction methodology
Experience in software design and development of Linux-based systems following an industrial process
Experience in systems design, architecture, and implementing large business systems.
Experience with testing frameworks (i.e. google test), mocking frameworks (i.e. google mock), and static analysis tools (i.e. CppCheck).
Preferred Qualifications:
French language skills is an add-on but not mandatory
Knowledge of SAP, ANAPLAN, BPC
Knowledge on Thales reporting system Magnitude appreciated incl. interface on GetCtData
Knowledge of POWER BI highly appreciated
Shaping solutions out of complexity and making the right choices between short, medium & long term
Ability to adapt to changing priorities
Thriving in a high performance finance culture where success is directly linked to delivery of key initiatives and projects
Are you ready to be part a part of something big? If your skills, experience and attitude are a match and you’re looking for an exciting challenge, please apply now using the link below and we will be in touch.
At Thales we provide CAREERS and not only jobs. With Thales employing 80,000 employees in 68 countries our mobility policy enables thousands of employees each year to develop their careers at home and abroad, in their existing areas of expertise or by branching out into new fields. Together we believe that embracing flexibility is a smarter way of working. Great journeys start here, apply now!Thales champions inclusion and we believe diversity strengthens the fabric of our culture. We are an Equal Opportunity Employer/AA/Minorities/Females/Veterans/Disabled.