旧塩港電氣工業製造社 主页旧塩港電氣工業製造社 主页

首席嵌入式软件工程师

Lead Embedded Software Engineer

伊顿(Eaton)

地点
普利茅斯,美国 弗兰克斯维尔,美国
工作方式
混合办公
类型
全职
资历
lead
部门
研究与开发工程
编号
64362

能源与电力电网基础设施配电与开关

职责

  • 主导新产品功能的高层设计活动
  • 主导系统接口设计活动并主导解决集成问题
  • 评估系统性能需求,以评估嵌入式软件和硬件组件的适用性
  • 使用 C/C++ 设计和实现电力系统智能电子设备的功能,包括电力系统保护算法、系统诊断/预测、通信协议、网络安全以及其他继电保护、控制和监控功能
  • 与产品负责人、职能经理和系统工程师协作,将产品/系统需求/用例提炼为固件设计/用户故事,开发模块级和系统级代码以及单元测试
  • 参与新产品开发/功能开发相关任务,包括规划、任务/用户故事估算、设计、编程、单元测试、同行评审、集成和发布
  • 在产品开发生命周期中,与外部和内部客户(例如市场营销、服务、运营和其他工程团队)进行协作
  • 参与嵌入式软件子系统的分析和规范制定
  • 设计并实现单元测试,以支持开发人员的测试活动,并与持续集成(CI)管道集成
  • 参与并主导设计及代码审查
  • 与项目团队协作,计划并执行各项任务,以确保达成目标
  • 与工程管理团队合作,评估并提出软件开发流程改进建议

必备要求

  • 获得认可机构颁发的学士学位
  • 至少4年嵌入式系统或嵌入式软件开发工作经验
  • 伊顿公司不会考虑为该职位申请人提供就业移民担保或支持

优先条件

  • 至少3年 C/C++ 使用经验
  • 熟悉硬件驱动程序和嵌入式应用程序、网络及相关领域,主要使用 C 和 C++ 作为编程语言
  • 具备嵌入式 Linux 软件开发环境和工具的熟练操作能力
  • 熟悉使用或设计采用串口、TCP/IP、以太网等网络协议的系统
  • 熟悉为嵌入式软件设计创建和实现虚拟化环境
  • 理解面向对象设计(OOD)原则、安全编码和网络安全最佳实践
  • 理解实时操作系统(RTOS)概念
  • 使用 UML 或类似方法(视情况而定)进行模型设计;开发用例以模拟实时系统行为
  • 能够在敏捷 Scrum(或其他迭代开发)环境中高效工作
  • 具备测试驱动开发(TDD)经验,并熟悉单元测试框架(例如 GoogleTest、GoogleMock、xUnit++)
  • 具备多核嵌入式系统方面的经验
  • 具备在团队环境中使用软件开发生命周期管理工具(例如 Jira、Git 等)的经验
  • 具备电力系统、开关设备和调节器控制产品/应用方面的知识者优先考虑
  • 能够出差,出差频率最高可达10%
  • 在全球团队环境中有效领导、工作和沟通
  • 与全球多学科工程团队(软件、嵌入式软件、硬件、电力系统、系统、产品和测试)合作,交付控制和继电器组的产品和功能
  • 优秀的口头和书面沟通能力,包括有效解释技术问题/概念的能力
  • 展现出解决问题的能力
  • 具备较强的自主性,能够在极少监督下高效工作
  • 能够在快节奏、以截止日期为导向的环境中工作
  • 较强的计划和组织能力

Responsibilities

  • Lead high-level design activities for new product features
  • Lead system interface design activities and lead resolution of integration issues
  • Evaluate system performance requirements to assess suitability of embedded software and hardware components
  • Design and implement functions for power system intelligent electronic devices using C/C++, including power system protection algorithms, system diagnostics/prediction, communication protocols, cybersecurity, and other protection, control, and monitoring functions
  • Collaborate with product owners, functional managers, and systems engineers to refine product/system requirements/use cases into firmware designs/user stories, develop module-level and system-level code and unit tests
  • Participate in new product development/feature development tasks, including planning, task/user story estimation, design, programming, unit testing, peer reviews, integration, and release
  • Collaborate with external and internal customers (e.g., marketing, service, operations, and other engineering teams) throughout the product development lifecycle
  • Participate in analysis and specification of embedded software subsystems
  • Design and implement unit tests to support developer testing activities and integrate with continuous integration (CI) pipelines
  • Participate in and lead design and code reviews
  • Collaborate with project teams to plan and execute tasks to ensure goals are met
  • Work with engineering management to evaluate and propose software development process improvements

Must Have

  • Bachelor's degree from an accredited institution
  • Minimum 4 years of experience in embedded systems or embedded software development
  • Eaton will not consider candidates for this position who require employment immigration sponsorship or support

Preferred

  • Minimum 3 years of experience with C/C++
  • Familiarity with hardware drivers and embedded applications, networking and related areas, primarily using C and C++ as programming languages
  • Proficiency with embedded Linux software development environments and tools
  • Familiarity with systems using or designing serial, TCP/IP, Ethernet and other network protocols
  • Familiarity with creating and implementing virtualization environments for embedded software design
  • Understanding of object-oriented design (OOD) principles, secure coding, and cybersecurity best practices
  • Understanding of real-time operating system (RTOS) concepts
  • Model design using UML or similar methods (as appropriate); develop use cases to simulate real-time system behavior
  • Ability to work effectively in an Agile Scrum (or other iterative development) environment
  • Experience with test-driven development (TDD) and familiarity with unit testing frameworks (e.g., GoogleTest, GoogleMock, xUnit++)
  • Experience with multicore embedded systems
  • Experience using software development lifecycle management tools (e.g., Jira, Git, etc.) in a team environment
  • Knowledge of power systems, switchgear, and regulator control products/applications is a plus
  • Ability to travel up to 10%
  • Effectively lead, work, and communicate in a global team environment
  • Collaborate with global multidisciplinary engineering teams (software, embedded software, hardware, power systems, systems, product, and test) to deliver control and relay products and features
  • Excellent verbal and written communication skills, including ability to effectively explain technical issues/concepts
  • Demonstrated problem-solving skills
  • Strong self-motivation and ability to work efficiently with minimal supervision
  • Ability to work in a fast-paced, deadline-oriented environment
  • Strong planning and organizational skills

公司简介

伊顿是一家智能电源管理公司,致力于保护环境,提升全球人民的生活品质。我们为数据中心、公用事业、工业、商业和机构、机械制造、住宅、航空航天和交通运输等市场提供产品。我们秉持着“诚信经营,可持续发展”的理念,致力于帮助客户管理电力——无论现在还是未来。通过把握全球电气化和数字化发展趋势,我们正在助力解决全球最紧迫的电源管理挑战,并为当代及子孙后代构建一个更加可持续发展的社会。