Principal Software Engineer

CoherentHorsham, PA
73d

About The Position

The position involves significant software development responsibilities, accounting for 75% of the role. The candidate will design and develop software features based on high-level customer and product line management requirements, develop new features for existing and future products, and resolve bugs and other sustaining issues related to legacy products. Collaboration with validation and integration engineers, optical, hardware, and test engineering teams is essential to continuously improve product performance, execution efficiency, and development processes. The candidate will also ensure that firmware documentation is accurate and up to date. The remaining 25% of the role focuses on teamwork and support, including coaching junior software engineers, driving coding reviews and practices across the team, and providing guidance to Field Application Engineers during pre and post-sales customer interactions. Additionally, the candidate will provide input to the documentation team.

Requirements

  • University degree in Electrical Engineering or Computer Science.
  • 8+ years of experience in embedded software systems.
  • Experience in the Optical Networking industry is preferred (L0 and/or L1 equipment).
  • Expert in C and C++ programming in embedded systems.
  • Experience with software functions for system products, such as North-Bound Interface, Platform infrastructure, BSP, and Applications such as Photonic control, alarms, PMs, Service Management.
  • Practical experience across the entire Agile development lifecycle, including continuous integration, continuous deployment (CI/CD), and collaboration through DevOps practices.
  • Good written and oral communication skills in English.
  • Experience in cross-site development with global teams.

Nice To Haves

  • Experience in Open-Source code, such as SONiC, FRRouting, Open vSwitch, etc.
  • Familiar with networking protocols (Netconf, Openfig, etc.) and security protocols.
  • Familiar with virtualization and container technologies.
  • Knowledge of Chinese is an asset.
  • Programming languages: C/C++, Go, Python.
  • Object-oriented design.
  • Linux multi-process design, multi-thread design.

Responsibilities

  • Design and develop software features based on high-level customer and product line management requirements.
  • Develop new features for existing and future products.
  • Resolve bugs and other sustaining issues related to legacy products.
  • Work with validation and integration engineers, optical, hardware, and test engineering teams to improve product performance and development processes.
  • Ensure firmware documentation is accurate and up to date.
  • Coach junior software engineers.
  • Drive coding reviews and practices across the team.
  • Provide guidance to Field Application Engineers during pre and post-sales customer interactions.
  • Provide input to the documentation team.

Benefits

  • Equal opportunity/affirmative action employer.
  • Consideration for employment without regard to sex, gender identity, sexual orientation, race, color, religion, national origin, disability, protected Veteran status, age, or any other characteristic protected by law.
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service