Software Engineer–Hardware Emulation (Hardware Emulation)
- Berkeley, California, United States
- Berkeley, California, United States
About
Job Description
At Boeing, we innovate and collaborate to make the world a better place. We’re committed to fostering an environment for every teammate that’s welcoming, respectful and inclusive, with great opportunity for professional growth. Find your future with us.
The Boeing Company is currently seeking an Senior Software Engineer–Hardware Emulation (Virtual) t o support our Emulation team located in Berkeley, Missouri. This position will focus on supporting the Enterprise Software Verticals (ESV) organization.
The Boeing Emulation Team is currently seeking an Associate Hardware Emulation Engineer. This team is responsible for developing software models that emulate the behavior and functionality of hardware components and systems, providing an all-software test and integration environment for various Boeing projects across Commercial Airplanes, Defense and Space platforms, training devices, and autonomous platforms.
In this role, you will leverage your experience and technical skills to lead the architecture and design of emulation solutions that meet the rigorous demands of our diverse projects. A successful candidate will collaborate with the Software Enterprise to embrace software best practices, standards, and initiatives, positioning the flight simulation team for efficient, effective, and high-quality execution. You will work closely with the FABRIC Boeing team, contributing to innovative solutions that enhance our emulation capabilities and streamline the integration of software and hardware.
Additionally, you will tackle reverse engineering challenges to discover solutions for hosting software in emulated environments. Your contributions will be vital in ensuring that our emulation tools not only meet current project requirements but also adapt to future technological advancements. Hands-on experience with virtualization technologies such as KVM and QEMU will be essential, as will familiarity with software development practices in GitLab. Understanding ARM, PowerPC, or x86 microprocessor architectures, along with common avionics data buses and interfaces, will further enhance your ability to deliver effective emulation solutions. Familiarity with Field Programmable Gate Arrays (FPGAs) and hardware description languages (HDL) will also be beneficial in this role.
This position has been identified as a virtual opportunity and will not require the selected candidate to relocate .
Position Responsibilities:
Leads the design, development, test, and integration of software models to emulate the behavior and functionality of hardware components or systems to provide an all-software test and integration environment.
Liaise with hardware engineers by contributing to the identification and review of requirements and specifications for the hardware being emulated.
Guides the development, automation, test, integration, and administration of emulation strategies and technologies.
Creation of verification plans, test procedures and test environments, executing the test procedures and documenting test results for emulation technologies.
Leads collecting and analyzing in-use product data to design new or enhance existing products.
Leads the identification, debugging, and resolution of issues to ensure the reliability and efficiency of software products.
Advises on software domains related to emulation technologies.
Guides the creation of policies, practices and processes for emulation and virtualized resource management.
Applies current and emerging technologies, tools, frameworks and changes in regulations relevant to hardware emulation.
Supports hardware emulation project management activities.
Basic Qualifications (Required Skills/ Experience):
7 + years of experience in testing or programming software written in C or C++
7 + years of experience in real-time, near real-time, or embedded systems
7 + years of experience with release tools (Azure DevOps, Artifactory, Gitlab, Maven), configuration management, monitoring, virtualization and containerization
7 + years of experience do you have with mission/safety-critical software development
Preferred Qualifications (Desired Skills/Experience):
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
Skill and ability to: collect, organize, synthesize, and analyze data; summarize findings; develop conclusions and recommendations from appropriate data sources.
Ability to comprehend and describe the structure of a computer system made from multiple component parts, so that it can develop, fix networks and platforms, configure software, use different programming languages and troubleshoot hardware as necessary.
Knowledge to design, develop, test and debug software programs without a user interface (UI) that will manage hardware components or peripherals attached to a computer.
Knowledge of platform's hardware, bus interfaces used by hardware to communicate with host and location of device driver software. Knowledge to write kernel mode driver, initialize software and control hardware
Knowledge of programming languages (e.g., C#, Java, Java 2 Enterprise and Mobile Editions (J2EE, J2ME), C++, Visual Basic, C, Assembly, Ladder Logic, Numerical Control (NC) Programming, Matlab ).
Knowledge of communications, networking, and protocols (e.g., Transport Control Protocol/Internet Protocol (TCP/IP), File
Languages
- English
This job comes from a TieTalent partner platform. Click "Apply Now" to submit your application directly on their site.