Principal Software Engineer (Software Infrastructure)
Company: Safran
Location: Brea
Posted on: January 21, 2023
Job Description:
At Safran Passenger Innovations, we make flying fun by focusing
on maximizing the Passenger Experience. As an innovative In-Flight
Entertainment and Connectivity (IFEC) company we design, engineer,
manufacture, sell and support world-class In-Flight Entertainment
and Connectivity solutions. Our products are constantly evolving,
solving complex media distribution, playback, and networking
problems in a secure and demanding on-wing environment. Safran IFEC
products are utilized by many of the world's premier air carriers.
Step aboard and help us by creating the best in-flight experiences
for today and beyond!
Job Summary
As a Principal Software Infrastructure Engineer on the Software
Development team, you will engage with an experienced
cross-disciplinary staff to design, implement and test innovative
In-Flight Entertainment (IFE) products applying state of art
Software Design principles and technologies to enhance and
modernize all aspects of our IFE platform, including architecture
and implementation of the software infrastructure of both on-wing
and off-wing Compute, Networking and Storage components of our
product line. Working closely with inter-disciplinary teams you
will participate in the architecture, design, development, test,
and integration phases of software features for the RAVE IFEC
systems and products using hybrid development and deployment
methodologies. You must be a self-starter, responsive, flexible,
and able to succeed within an open, collaborative peer
environment.
Duties and Responsibilities:
- Architect and implement secure, scalable infrastructure
utilizing containerization technologies like Kubernetes, Dockers
targeted for on-prem, AWS Cloud, and embedded resource-constrained
devices
- Design and implement fault tolerant and load balancing
strategies for applications running in Cloud, on-prem, and on
resource-constrained embedded devices
- Architect and implement common software infrastructure to
address cross-cutting concerns like Authentication/Authorization,
PKI, Encryption/Decryption, Relational and NoSQL Data storage,
Exception Handling/Tracing/Logging, Caching, Rate
limiting/throttling, Circuit Breaker, Analytics, etc.
- Define an architectural blueprint for designing
microservice-based architecture including but not limited to
Service-to-service communication patterns, Service orchestration,
Service versioning/configuration, etc.
- Define performance benchmark and analyze application
performance for latency and design flaws. Scope and implement
performance-enhancing solutions
- Closely work with the development team to triage, troubleshoot
and debug issues reported by the testing team
- Provide realistic estimates, foster a culture of transparency,
and meet agreed-upon commitments
- Facilitate communication internally, with stakeholders, users,
and/or customers on specifications, architecture, design,
implementation, and approvals
- Actively participate, engage, and contribute during
meetings
- Leverage other internal organizations to facilitate product
success
- Prepare and present technical information for large and diverse
audiences
- Assess third-party and open-source software and in some cases
implement the same
- Adhere to, contribute to, and help improve both organizational
processes and the software development lifecycle (SDLC)
- Provide guidance, mentoring, training, and support across
product development and the broader IFE business with respect to
Software Design principles and Software Architecture
techniques.
- Demonstrate a passion for continuous improvement and take
personal ownership of the quality of the work product
Requirements
Preferred Qualifications, Education and Experience:
- Bachelor's Degree in Engineering, Computer Science, or
equivalent experience in a related field
- 3-6 years of experience in a Senior (or above) level role
within Software Infrastructure
- 15+ years of overall software development experience
Required Experience:
- 5+ years of experience designing and implementing
infrastructure to support PaaS and IaaS deployment of
applications
- Experience in designing and implementing fault tolerant and
load balanced infrastructure using Kubernetes, Dockers and/or
serverless technologies both in Cloud and on embedded devices
- Experience in defining guideline and reference architecture for
microservices based applications
- Experience in designing and implementing applications and
loosely coupled microservices in Nodejs, React, TypeScript, C, C++,
C#,.Net for ARM and x86 processors and in AWS Cloud
- Experience in utilizing common design patterns for implementing
cross cutting concerns using off the shelf product and custom
code
- Experience refactoring/rearchitecting monolithic solutions into
distributed microservices, containerized or serverless with heavy
API design and implementation strategies
- Experience in installing, configuring and troubleshooting
UNIX/Linux/Windows based environments hosted both in cloud and
on-prem
- Experience with security engineering concepts and practices
including system and network security, authentication, protocols,
cryptography, DB and application security in regulated environments
(PKI, SSL, TLS, PCI-DSS, PII, GDPR, and CCPA Standards and
Policies)
- Experience with formal Engineering Requirements documentation
and processes
- Understanding of embedded system software architecture and
constraints particularly with ARM/x86 processors
- Mastery of basic networking concepts such as routing,
switching, bridging and wireless and related protocols
- Understand the OSI model and relationship between layers,
hybrid networking concepts (Cloud/On-Prem/On-Wing), VPN and VPC
concepts
Desired Experience:
- Cellular modem/firmware knowledge
- Adept at implementing internal tools to support development and
troubleshooting of the entire infrastructure stack
- Understanding of Video/Media content, playback, delivery, and
streaming including DRM as well as understanding distributed file
sharing concepts like BitTorrent.
Experiences with any of the following languages, technologies
and/or techniques would be advantageous:
- Low level kernel/driver knowledge of Linux 4.x and 5.
- Python, Qt/QML and GUI development
- MQTT, IPC, RPC, sockets and/or audio/video players
- Audio/Video (A/V) device drivers, A/V kernel modules and/or A/V
libraries
- 4K Video and DRM understanding
- ARINC 429 (data transfer) and RS-485/422
- Understanding of bus design: I2C, PCIe, SPI, MDIO, CAN,
etc.
- Mobile application communications development
The starting pay range for this position is $148,000 - $197,000,
however, base pay offered may vary depending on skills, experience,
job-related knowledge and location.
Keywords: Safran, Fullerton , Principal Software Engineer (Software Infrastructure), IT / Software / Systems , Brea, California
Didn't find what you're looking for? Search again!
Loading more jobs...