Senior Lead Engineer, Software 1 (Austin)

Celestica International LPMerrimack, NH
22h

About The Position

The Senior Lead Software Engineer designs, develops, and maintains software across all levels (firmware to application), adhering to established development processes (e.g., Agile) and product lifecycle standards. This role requires collaboration with cross-functional teams to integrate feedback and ensure robust, high-quality product development. Celestica is looking for a dynamic software engineer who is passionate about working closely with the HW/SW interface to enable management of a fleet of devices in tomorrow’s data center environments. The person needs be very conversant with board management controllers, low level drivers and capable of mentoring a team of engineers. The Senior Lead Engineer, Software will work in cross functional teams with customers, product line management, manufacturing engineering, hardware engineering, quality assurance and project leadership to ensure robust and high quality software. Added bonus if you have a broad skillset spanning Storage, Compute and Networking appliance development.Detailed DescriptionAs a Senior Software Engineer, you'll be at the forefront of our product development, working on challenging and impactful rewarding projects.

Requirements

  • Project Management Expertise: The ability to manage and lead complex, multiple task engineering projects, understand and drive the technical aspects, and be able to debug/develop mitigation plans for barriers.
  • Strong Communication & Collaboration: Excellent coaching, mentoring, communication, negotiation, and presentation skills, with a commitment to working effectively within teams and with stakeholders within and outside of the organization.
  • Problem-Solving & Quality: A knack for creative problem-solving, along with familiarity with Quality & Lean methodologies, D/PFMEA, and 8D/Corrective Action is a plus.
  • Programming Languages: C, C++, Python
  • Embedded Systems: Advanced hands-on knowledge of x86-based Linux embedded systems/appliances
  • Board Support Packages (BSPs): Expertise in developing and working with BSPs
  • Diagnostics: Solid understanding and experience in specifying and developing diagnostic applications to ship product in high volume
  • Software Development Kits (SDKs): Proficient in utilizing SDK for AI Accelerators, Network Processing Units (NPU) and Embedded platforms
  • BIOS: Working knowledge of system BIOS and software, ability to debug complex issues and deliver SW patches
  • BMC: Working knowledge of Yocto/OpenBMC, ability to debug complex issues and deliver SW patches

Nice To Haves

  • In-depth understanding of Linux kernel, device driver, IPC, U-boot.
  • Familiarity with Linux application development.
  • Knowledge of BMC including IPMI, SDR, SEL, FRU records, SOL, IPMB, Side-band LAN, KCS and KVM.
  • Knowledge of Redfish and other management protocols.
  • Working knowledge of BMC related Hardware such as ARM, BMC chip (AST 2500, AST2600, Pilot 4 etc.), HW-monitor and Super-IO, NC-SI NIC, phy.
  • Working knowledge of common bus such as I2C, IPMB, PMBUS, SPI, LPC, UART, JTAG.
  • Experience with one or more of the following standards/technologies: SCSI, SES, RAID, SAS, SATA, SSD, SMART, PCI Express, HBA, network protocol TCP/UDP, etc is a plus.
  • Experience with PSoC or MCU firmware development is a plus.

Responsibilities

  • Lead Technical Solutions: Spearhead the design, development, and implementation of intricate technical solutions for complex x86 based appliance projects for data center and enterprise applications.
  • Drive Software Development: Write, debug and maintain software across various languages (C/C++/Python) and software hierarchies (from firmware to application level), adhering to established development practices (e.g., Agile, Scrum).
  • Analyze and Optimize: Review customer requirements, analyze trade-offs in complex systems, recommend optimal solutions, and develop comprehensive deployment strategies.
  • Self Driven: Exhibits a proactive and engaged approach to all responsibilities, consistently taking the lead on new initiatives and contributing to a dynamic multi-site team environment.
  • Foster Collaboration: Work within cross-functional teams with other developers, customers, and manufacturing engineers to ensure robust and high-quality product development, incorporating feedback for design enhancements.
  • Build & Maintain: Design, develop, and analyze tests and test-automation suites, and provide ongoing maintenance, support, and enhancements for existing systems and platforms.
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service