Staff Software Engineer
Join our Platform Services team, focused on the Dentistry SaaS space. You'll help build, operate, and maintain strategic software projects of varying scope and complexity. Your work will directly support key business objectives while creating patterns and references for other teams.
As a Staff Software Engineer, you'll perform advanced programming and technical design to enhance and maintain new or existing software products. You'll apply deep domain and framework knowledge to deliver high-impact solutions that support business goals. You'll collaborate across teams on both small and large high-priority projects, requiring quick delivery followed by high-value improvements. Your focus will remain on the organization's most critical objectives, which may evolve over time. You'll balance shifting priorities through flexibility and task-switching while maintaining consistent output and quality. While goals are defined at a higher level, you'll be responsible for breaking them down into actionable work aligned with business objectives. You'll define your own operations and maintenance efforts and integrate them into the overall schedule, and focus on frequent, incremental delivery of value without compromising code quality.
What You Will Do
- Design and develop complex code solutions that meet business requirements on time and within budget.
- Mentor junior engineers on best practices across multiple programming languages and frameworks.
- Maintain high code quality through unit testing, code reviews, reducing cyclomatic complexity, removing code duplication, and debugging.
- Support documentation and technical teams by providing clear, concise, and accurate details about software functionality.
- Implement code that adheres to established standards and demonstrates a strong understanding of inter-process/thread communication, message queues, networking, versioning, database systems and design, database access, memory management, modeling, security, concurrency, services, and data warehousing.
- Implement code that demonstrates expertise in user interface design, object-oriented design, refactoring, design patterns, test automation, and CI/CD.
- Provide accurate estimates and documentation throughout the Software Development Life Cycle (SDLC).
- Collaborate effectively across teams and communicate technical concepts to management and non-technical stakeholders.
- Advocate for users, understanding their perspective and incorporating their needs into development decisions.
- Own the technical quality of your team's codebase - identify and resolve technical debt, lead improvement projects, and shape the team's technical roadmap.
- Drive engineering-wide goals around performance, reliability, and cost optimization, surfacing ideas and aligning them with team planning.
- Foster collaboration, explaining complex ideas clearly, building consensus, and guiding discussions toward productive outcomes.
- Lead operational improvements, applying deep DevOps expertise to streamline deployment, access, and process controls.
Travel/Physical Demands
- Travel typically less than 10%
- Office environment with no special physical demands required
Technologies We Use
- Languages and Framework: Java and the Spring Framework, JavaScript/Typescript
- Database: SQL (Postgres) and NoSQL
- Security: OAuth2
- DevOps: git, Pipelines
Henry Schein, Inc. is an Equal Employment Opportunity Employer and does not discriminate against applicants or employees on the basis of race, color, religion, creed, national origin, ancestry, disability that can be reasonably accommodated without undue hardship, sex, sexual orientation, gender identity, age, citizenship, marital or veteran status, or any other legally protected status.