About The Position

The Principal Software Engineer position is responsible for actively developing software as a leader on an Agile/Scrum team. The Principal SE position pro-actively takes ownership of user stories and defects prioritized by the team’s Product Owner, to correctly size and accurately detail stories and defects, while applying modern development practices to resolve complex development projects in our large codebases. The Principal Software Engineer works in a constantly evolving Agile environment, contributing to the solution sets that solve the world's manufacturing challenges. This role pro-actively takes ownership of complex, cross-team systems and challenges and provides high-level, innovative solutions while creating the next state-of-the-art development practices and technologies to resolve development challenges in our large codebase.

Requirements

  • Master’s Degree or higher in Computer Science, Mathematics, or Engineering, or equivalent experience
  • 15+ years’ experience in developing commercial applications software in C# or C++.
  • 15+ years’ experience in one of the domain area for the target scrum team.
  • Expert level experience with modeling kernels such as Parasolid.
  • Expert level development experience for Microsoft Windows using Visual Studio.
  • Expert knowledge and experience with standard software development practices such as source control, peer reviews, and unit testing.
  • Proven, in-depth experience with agile software development.
  • Expert understanding of object-oriented development.
  • Pro-active team player who can clearly communicate with both technical and non-technical co-workers.
  • Proven ability to drive complex and large-scaled projects to completion.
  • A track record of delivering well-designed, high-quality software.
  • Deep expertise in multiple domain areas of our Product.
  • Excellent ability to design and implement large-scale software projects.
  • Excellent ability to coordinate multiple developers to complete large-scale software projects.

Responsibilities

  • Design, develop, and test software to resolve defects and implement user stories.
  • Act as CAD domain expert.
  • Define high-level architecture.
  • Maintain a system-wide approach to developing solutions.
  • Define future modern development practices to solve complex problems in related to the team’s domain.
  • Continuously expand expertise as an industry-leading expert in multiple major areas of CNC Software’s products.
  • Pro-actively work with team in writing, correctly sizing, and accurately detailing and breaking down stories and defects.
  • Lead and actively contribute into planning meetings related to assigned areas.
  • Coordinate with other developers and all involved teams to decide how best to implement large-scale, cross-team projects and changes.
  • Pro-actively communicate project status regularly, inclusive of all pertinent details, with all necessary stakeholders across the company.
  • Mentor other developers to build their software engineering expertise and ensure high-quality software delivery.
  • Conduct peer reviews, sharing experiences and knowledge with others as needed and appropriate.
  • Act as a role model for other developers.
  • Promote coding best practices.
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service