Job Summary:
The Software Engineer II is a mid-level individual contributor who delivers complete features and components, often independently, and supports the broader team through code reviews and collaboration. This role applies a thorough understanding of development principles, patterns, and tools to a variety of technical problems, balancing technical design with customer needs and business priorities. The Software Engineer II significantly contributes to code quality, continuous improvement, and cross-functional collaboration while serving as a reliable, accountable member of the engineering team. The role uses approved AI-enabled practices across implementation, testing, debugging, documentation, production support, and code comprehension; provides relevant context and constraints; evaluates generated alternatives; and remains accountable for the resulting work.
All activities must be in compliance with Equal Employment Opportunity laws, HIPAA, ERISA and other regulations, as appropriate.
Essential Functions
In addition to working in accordance with appropriate conduct and behavioral standards, specific responsibilities of this role include:
- Own medium-sized features or components from design and estimation through implementation, testing, deployment, and maintenance.
- Apply established design patterns, architectural principles, and best practices to deliver robust, scalable, and maintainable solutions.
- Use customer context and product requirements to inform technical decisions, ensuring solutions support usability, performance, and reliability.
- Participate in on-call rotations or incident response as applicable, contributing to root-cause analysis and resolution of customer-impacting issues.
- Write high-quality, testable code that adheres to coding standards, including appropriate unit, integration, and regression tests.
- Conduct code reviews that provide constructive feedback, identify defects, verify AI-assisted changes, and help maintain consistency and quality across the codebase.
- Recommend and implement improvements to development processes, tooling, and team workflows—including AI-assisted approaches—to increase efficiency and quality, using evidence to retain or retire practices.
- Collaborate effectively with product, UX, QA, and other engineering team members, helping to clarify requirements, identify dependencies, and align on delivery plans.
- Communicate clearly and proactively about progress, risks, trade-offs, and technical constraints to both technical and non-technical stakeholders.
- Support the onboarding and skill development of junior engineers through pairing, informal mentoring, and knowledge sharing.
- Use approved AI capabilities independently across implementation, testing, debugging, documentation, production support, and code comprehension; provide context and constraints, evaluate alternatives, and explain decisions.
- Validate AI-assisted work against requirements, edge cases, failure paths, dependencies, tests, and coding standards.
- Document verification of significant or high-risk AI-assisted changes and remain accountable for submitted work.
Minimum Requirements
- Bachelor’s degree in Computer Science, Software Engineering, or a related field; or equivalent combination of education and experience.
- 5 years of professional software engineering experience.
- Demonstrated ability to independently deliver end-to-end features, including design, implementation, testing, and deployment.
- Solid understanding of software engineering principles (e.g., SOLID, design patterns, data structures, algorithms) and their practical application.
- Experience with modern tooling and practices such as Git-based workflows, automated testing, CI/CD pipelines, and observability tools.
- Strong verbal and written communication skills, including the ability to document designs and explain technical decisions.
- Academic education and/or professional experience or certifications that demonstrate growing depth in the technologies and patterns used in the role and a commitment to continuous learning.
Preferred Qualifications
- Experience working within a multi-service or microservices architecture, including service-to-service communication and resilience patterns.
- Hands-on experience with one or more major cloud platforms (e.g., AWS, Azure, GCP) and associated managed services.
- Experience leading small sub-projects or workstreams, including coordinating tasks with peers and cross-functional partners.
- Familiarity with performance optimization, profiling, and troubleshooting complex issues in production environments.
- Participation in technical communities or contributions to internal tools, documentation, or open source projects.
Working Environment/Physical Demands
Working Environment:
This role may be performed fully remote within the United States, with optional access to company offices where available. Collaboration occurs primarily via virtual tools, with occasional in-person meetings or team events. Long-distance or air travel as needed – not to exceed 10% travel.
Physical Demands:
- Prolonged periods working at a computer, including typing and viewing screens.
- Frequent communication via video, phone, and online platforms.
- Occasional movement within a home or office environment; infrequent lifting of standard office or computer equipment.
Generous annual bonus opportunity