Job Description:
- Seeking a Software Architect Sr with Kubernetes experience responsible for network architecture of our next generation In Flight Entertainment and Connectivity (IFEC) systems that utilize Android / Linux platforms, and multi-tiered, client-server technologies as well as Cloud-hosted services.
- Act as technical leader and mentor other software engineers and architects.
- Develop network architecture design.
- Partner and facilitate discussions between stakeholders.
Required Experience & Skills:
- Bachelor of Science Degree in Computer Sciences, Computer Engineering, Electrical Engineering, Telecommunications, or Network Technology or other related engineering degree.
- 10+ years of networking related programming in Linux systems.
- 5+ years of experience working on wireless, mobile and satellite communication systems.
- 3+ year’s architecture experience in complex embedded systems.
- Expert level experience with layer 2-7 networking design, test, operation, monitoring and troubleshooting.
- Extensive Linux networking and routing experience with knowledge of LAN, WAN, VLANs, IPv4/IPv6, TCP/UDP, routing/firewalls, NAT, Trunking, DHCP, DNS, NTP, AVB, TLS, multicast, QoS, filtering, rate control, load balancing.
- Experience with bare-metal Kubernetes networking with knowledge of CoreDNS, NAT, Gateway API, Loadbalancers, Network Policies, CNI, Overlay Networks, Cilium, Flannel, Service Meshes, eBPF, etc.
- Experience with networking focused operating systems such as Cumulus Linux, VyOS, openWRT, DD-wrt.
- Experience with unmanaged ethernet switches and configuration related to features such as port controls, buffer management, ATU tables, TCAM.
- Experience with wireless access points, their configuration, and elements such as security, captive portals.
- Experience interfacing with cellular and satellite-based networking systems and least cost routing models.
- Experience and In-depth working knowledge of TCP/IP, LAN/WAN, VPN, and IP routing protocols (OSPF, BGP).
- Experience with Cloud-provider network design and implementation (AWS, Azure, etc.).
- Strong knowledge of IP networking including Virtual Private Cloud, VPN, SDN, DNS, Load-balancing, and Firewalls.
- Familiarity with the following commercial networking equipment: Cisco and Juniper routers, Palo Alto, Juniper and Cisco firewalls, and F5 or other load balancer.
- Experience with design / development of complex Linux / Android embedded systems.
- In depth understanding networking designs best suited to a variety functional use cases such as audio/video distribution/streaming, file sharing, message streams, Internet Service Provider, and transactional systems.
- Understanding of networking security and cryptography.
- Experience in design / development of software on complex embedded systems from requirements to production / deployment.
- Robust analytical skills and ability to identify and solve complex problems at the network and system layers.
- Experience organizing / leading / approving design reviews, test plan reviews.
- Experience building web scale/container-based solutions (distributed and standalone) using Kubernetes a plus.
- Experience documenting architectures and familiar with related diagraming models (C4, PlantUML, ArchiMate, etc.).
- Exceptional verbal, written and interpersonal / collaboration skills.
- Experience in Agile development process.
- Experience with AWS Cloud Computing a plus.
Roles & Responsibilities:
- Develop and document end-to-end network architecture for IFEC systems.
- Ensure network architecture meets functional, operational and scalability requirements.
- Define, document and communicate clear goals (NFRs) for the network architecture including the reasons they were chosen, key attributes, risks and how the architecture meets them.
- Recommend and develop architectural design patterns / frameworks that enable the chosen architecture and will be used by the development teams.
- Review existing networking designs and identify / implement improvements.
- Responsible for providing complete front-to-end engineering, implementation and support of solutions involving, but not limited to, WAN, LAN, WLAN, Security, Virtual, and Cloud technologies.
- Communicate the network architecture throughout the organization via presentations and architecture documents/diagrams.
- Interface with product and engineering teams on review of new features / products and provide guidance on the implications / work scope / feasibility of them.
- Collaborate with development / test / integration / support teams on refinement/implementation/verification/deployment of the chosen architecture.
- Participate in detailed design, test plan and go-to-market reviews to ensure alignment with the chosen architecture and NFRs are met.
- Evaluate upcoming technologies, stay current with industry best practices and adapt them into the network architecture as needed to enable the product roadmap.
- Create prototypes, proof-of-concepts and demonstrations to evaluate new architecture / technologies on the systems.
- Provide technical leadership with engineering in the areas of software design, implementation and test.