Employment Type : Full-Time
Location: Melbourne, United States of America 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 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.