Req ID: 139141
Region: Americas
Country: USA
State/Province: California
City: San Jose
General OverviewFunctional Area: Engineering
Career Stream: Design - Software Engineering
SAP Short Name: SLE-ENG-DSE
Job Level: Level 09
IC/MGR: Individual Contributor
Direct/Indirect Indicator: Indirect
SummaryThe Senior Lead Engineer, Software develops, debugs, tests, deploys and supports code to be deployed in systems/products/equipment for various applications. They write, debug, maintain, and test software in various common languages and for software at various levels in the hierarchy (from Firmware to Application). Software creation follows an agreed to development process (such as Agile, Scrum, etc.) and complies with the product life cycle development (phase/gate deliverables).
The Senior Lead Engineer, Software works in cross functional teams with other designers, customers, manufacturing engineering and project leadership to ensure robust and high quality product development. Enhance designs with feedback from reviews in areas such as manufacturing, test, supply chain, reliability, industrial design and simulations.
In this role, the Senior Lead Engineer leads OpenBMC platform management software development for Celestica's high-performance networking and compute platforms. Working upstream-first on the Linux Foundation OpenBMC codebase, the engineer delivers Redfish-based remote management, platform bring-up, telemetry, thermal control, and firmware update capabilities in close partnership with hardware, manufacturing, and customer teams. Deep understanding of embedded Linux and Yocto.
Detailed DescriptionPerforms tasks such as, but not limited to, the following:
- Lead the design, development and implementation of technical solutions for OpenBMC-based platform management. Participate in project planning and scheduling.
- Provide technical leadership and direction to a team of engineers. May be a recognized expert (go-to person) in OpenBMC or other platform technical areas.
- Own platform enablement on the Linux Foundation OpenBMC stack, including Yocto meta-layers, U-Boot and kernel porting, device tree, and flash layout, following an upstream-first development model.
- Develop and maintain remote management interfaces, with Redfish as the primary API, and supporting debug interfaces such as SSH.
- Develop platform management capabilities across power control, FRU inventory, sensor telemetry, thermal and fan control, and event logging.
- Deliver firmware update flows (BMC, BIOS, CPLD, VR, and related components) with versioning, verification, and event logging.
- Implement management features for security, reset and recovery, health monitoring, and diagnostics.
- Review, interpret and may negotiate customer requirements/specifications, provide customer feedback, and ensure quality of deliverables.
- Work closely with hardware engineers on board bring-up and with manufacturing teams to support product qualification.
- Analyze, design and develop tests and test-automation suites, leveraging the upstream openbmc-test-automation framework for Redfish-based regression testing.
- Proactively promote and apply industry best practices, and provide recommendations for continuous improvement.
#HPS-NA
Knowledge/Skills/Competencies- Hands-on experience developing OpenBMC or comparable BMC/platform management firmware.
- Experience with the Linux Foundation OpenBMC ecosystem: Yocto/BitBake, U-Boot, Linux kernel, and device tree, with an upstream-first contribution model.
- Working knowledge of Redfish, and platform management concepts such as sensors, FRU inventory, thermal/fan control, power control, and firmware update.
- Strong programming skills in C/C++ and Python; comfortable with shell and Git.
- Experience in software design under Linux and familiarity with Linux kernel driver interaction over common buses (I2C, SPI, GPIO, etc.).
- Understanding of platform security concepts such as verified boot and redundant/failover flash layouts is a plus.
- Outstanding software debugging skills; experience with board bring-up and hardware test equipment is a plus.
- Excellent verbal and written communication skills; strong interpersonal, multitasking, and organizational skills.
- Project Management - Ability to manage/lead complex, multiple line engineering projects that may also involve other functions. Demonstrate solid understanding of the technical, financial and people aspects of the project. Able to create a project/change management plan and ensure that the project is delivered within the assigned time and budget. Ability to recognize project barriers and develop mitigation plans
- Leadership - Demonstrate "People & Team Leadership Behaviors" as per Celestica Leadership Imperatives.
Physical Demands- Duties of this position are performed in a normal office environment.
- Duties may require extended periods of sitting and sustained visual concentration on a computer monitor or on numbers and other detailed data.
- Repetitive manual movements (e.g., data entry, using a computer mouse, using a calculator, etc.) are frequently required.
- Occasional travel may be required.
Typical ExperienceTypical EducationBachelor degree or consideration of an equivalent combination of education and experience.
Educational Requirements may vary by Geography
Salary RangeThe salary range described in this posting is an estimate by the Company, and may change based on several factors, including by not limited to a change in the duties covered by the job posting, or the credentials, experience or geographic jurisdiction of the successful candidate.
NotesThis job description is not intended to be an exhaustive list of all duties and responsibilities of the position. Employees are held accountable for all duties of the job. Job duties and the % of time identified for any function are subject to change at any time.