About The Position

Senior Embedded Software Architect (Virtual) Company: The Boeing Company The Boeing Company is currently seeking a Senior Embedded Software Architect(Virtual) to support our Software Engineering team located in Plano, Texas. This position will focus on supporting the Boeing Defense, Space & Security (BDS) Software Engineering organization. At Boeing, we are at the forefront of aerospace innovation, shaping the future of flight and space exploration. We are seeking a talented candidate who has subject matter expertise in multicore assurance from across the country to join our Software Engineering team, focused on multicore analysis and integration for our avionics software/hardware solutions. We are particularly interested in engineers who are passionate and have strong experience in embedded software development, hardware/software integration, safety-critical software development, and/or multicore interference analysis. A successful candidate will be able to independently tackle challenging problems, communicate effectively, and take responsibility for the complete software lifecycle. All candidates are expected to possess working knowledge of modern software engineering tools and practices, such as Distributed Version Control Systems (DVCS), Continuous Integration (CI), Continuous Deployment (CD), and a bias towards automation. Boeing is committed to fostering a culture of safety, quality, and integrity. We value diverse perspectives and encourage all qualified candidates to apply. Join us in redefining what is possible and bringing world-class innovation to market.

Requirements

  • 2+ years of experience do you have developing software in a multi-threaded execution, multi-core processor computing environment, where the use of semaphore variables are used to control access to common resources
  • 5+ years of experience do you have writing embedded software within software development life-cycles
  • 5+ years of experience do you have in real-time, near real-time, or embedded systems
  • 5+ years of experience do you have programming in C, C++ or C#

Nice To Haves

  • Bachelor of Science degree from an accredited course of study in engineering, engineering technology (includes manufacturing engineering technology), chemistry, physics, mathematics, data science, or computer science.
  • Knowledge and experience with developing software in relation to one or more of the following standards: DO-178C to at least DAL-B (DAL-A preferred), NASA-STD-5001, MIL-STD-498, MIL-STD-882, MIL-HDBK-516C.
  • Experience with customized software for single board computers
  • Strong understanding of embedded software, e.g., bootloaders, device drivers, OS schedulers, interrupts, network protocol stack such as UDP/IP, ARINC 653
  • Embedded experience with board bring-up, including configuring board, bootloaders (e.g., U-boot), device drivers, OS startup
  • Arm processor assembly language
  • Experience with performance tuning of high-speed I/O (e.g., PCIe, Gigabit Ethernet, USB)
  • Strong understanding of processor and board hardware, including: all elements of the memory hierarchy (cache, TLB, MMU, paging, interconnect, DDR controllers and memory banks), cache coherency protocols and set-associativity, Arm TrustZone, System-On-Chip (SoC), PCIe, Ethernet, interrupts, DMA
  • Understanding of processor architecture, including pipeline, out-of-order execution, branch prediction
  • Hardware-based debugging (e.g., JTAG), timing measurement, performance measurement
  • Experience in CI/CD DevOps (GitLab preferred)
  • Familiar with compiler and linker, code optimization, stack/heap utilization
  • Expertise with virtualization, e.g., Helix Virtualization Platform
  • Full stack understanding of user space and kernel space
  • Experience with test automation
  • Experience with real-time measurements, evaluation of Worst-Case Execution Time (WCET)
  • Understand basics of safety-critical assurance (e.g., DO-178C or MIL-HDBK-516C), including concepts such as traceability, structural coverage, MC/DC, Data coupling/control coupling, test cases/procedures
  • Experience with benchmarks (interference generators) to exercise targeted elements of the hardware including processor and board. (preferably experience writing such benchmarks)
  • Experience multicore interference mitigation and verification, e.g., cache coloring, temporal/spatial partitioning
  • Experience with multicore interference regulatory guidance (e.g., AC 20-193, CAST-32A, AA 22-01)
  • Experience with DO-297 IMA partitioning, ARINC 653 Parts 1 and 2
  • Expertise with analyzing memory hierarchy, including cache organization, set associativity, cache coherency, DDR memory banks, interconnect QoS, etc.
  • Familiar with engineering statistics and probability

Responsibilities

  • Design, develop, test, debug, and maintain software integrated into embedded devices and systems, ensuring compliance with industry, customer, safety, and regulatory standards.
  • Review, analyze, and translate customer requirements into software product designs for embedded devices and systems.
  • Build and write code for embedded systems software tailored to specific specialized hardware and applications.
  • Integrate embedded software with hardware components effectively.
  • Provide guidance on software and hardware integration best practices.
  • Implement current and emerging technologies, tools, frameworks, and regulatory changes relevant to software and hardware development.
  • Test and debug software for embedded devices and systems to ensure functionality and reliability.
  • Analyze, monitor, and enhance the efficiency and stability of embedded software systems.
  • Integrate specific interference generators into our software environment, perform multicore interference analysis, and collect and analyze the results
  • Build test software to test the system under various worst-case conditions, collect and report on the results.
  • Collect, document, and demonstrate compliance based on evidence from analysis
  • Support and/or lead the technical planning, investigation, testing, coaching, and documentation of multicore systems.

Benefits

  • health insurance
  • flexible spending accounts
  • health savings accounts
  • retirement savings plans
  • life and disability insurance programs
  • paid and unpaid time away from work

Stand Out From the Crowd

Upload your resume and get instant feedback on how well it matches this job.

Upload and Match Resume

What This Job Offers

Job Type

Full-time

Career Level

Senior

Education Level

No Education Listed

Number of Employees

5,001-10,000 employees

© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service