Description
Software Development Engineer
Precision Analytical (PA) is the creator of the DUTCH Test, an innovative hormone test that creates better tools for healthcare professionals to explore hormone issues with their patients.
PA exists to make it easier for patients and their healthcare providers to find answers to complex clinical questions.
We are fully committed to our mission of providing the best diagnostic tools in functional medicine.
This position is located in McMinnville, Oregon, in the beautiful Willamette Valley.
We are seeking candidates who can work effectively from both a home office and our McMinnville office or other worksites.
Compensation & Benefits
At PA, we base our pay ranges on the market median of similar jobs, as determined by third-party salary benchmark surveys.
The salary range reflects the minimum to midpoint of the salary range to provide room for growth.
Your individual pay will vary based on skills, experience, and internal equity.
During your initial interview with the Talent partner, you can expect to have an open discussion about your pay expectations.
With a career at PA, you get:
Market-based competitive wageBonus potential401(k) with employer contributionMedical, dental and vision insuranceCompany-paid life insuranceWellness programOnsite gymPaid time offHoliday & Floating holidayCasual work environmentEmployee assistance programFree DUTCH Tests…and more!
About the Role
We're rebuilding our architecture from the ground up, and we're looking for a Software Development Engineer to help shape it.
You'll design, build, and ship scalable cloud-native applications with a focus on AWS serverless, event-driven architecture, and TypeScript/Node.js, while drawing on solid experience with traditional application architectures too.
Who You Are
You're a hands-on engineer with a curious streak.
You've opened up a codebase, asked "why does it work like this?", and then actually gone and found out.
You're equally comfortable with serverless and traditional architectures, and you know when each one is the right tool.
You enjoy hard problems, ambiguous requirements don't rattle you, and you care about how your code connects to the business it serves.
When you dig into an existing system, you can tell the difference between what the business actually needs and what someone bolted on years ago as a workaround.
What You'll Do
Most of your work will be building new systems, and those systems will need to integrate closely with our existing applications and platforms.
That means designing clean, well-defined integrations that keep our architecture flexible as it evolves.
On our small team you won't be siloed: you'll have a hand in every stage of the software lifecycle, from shaping requirements to shipping to production.
This role reports to the VP of Technology.
Major Duties and Responsibilities
Help shape our new architecture from the ground up, choosing between serverless, containerized, and traditional approaches, and between monolithic and microservice designs, based on what each problem actually needsDesign, develop, test, and maintain scalable, cloud-native applications using AWS and modern software development practicesBuild serverless and event-driven systems using AWS services including Lambda, API Gateway, SQS/SNS, EventBridge, and Step Functions, as well as ECS and Docker containersApply distributed-system patterns such as pub/sub, saga, idempotency, retries and dead-letter queues, and CQRS to build reliable and resilient systemsDevelop infrastructure as code using AWS CDK and/or SAMBuild backend services and applications using TypeScript/JavaScript and Node.jsDesign and work with both relational SQL databases and NoSQL databases, including DynamoDBApply strong software engineering fundamentals, including data structures, algorithms, complexity analysis, software design patterns, SOLID principles, and separation of concernsUse sound judgment when applying design patterns, recognizing when a pattern improves maintainability and when it introduces unnecessary complexityParticipate in Git-based development and pull-request workflows, including code reviews and collaborative problem solvingBuild and maintain CI/CD pipelines and automated testing, including unit, integration, and characterization testingAnalyze existing applications and workflows to understand their business logic, identify the true business rules, and translate them into modern cloud-native designsDesign integrations between new services and existing applications and platforms, including data synchronization and migration between database platformsMonitor and troubleshoot applications using AWS observability tools such as CloudWatch and X-Ray, along with structured logging and other appropriate practicesApply sound IAM and cloud security fundamentals when designing and implementing AWS solutionsCollaborate with technical and non-technical stakeholders to clarify requirements, explain trade-offs, and make practical decisionsStay current with emerging development tools, including AI-assisted coding and AI application development, and apply them thoughtfully with appropriate review and testingContribute to LLM-powered applications, including RAG pipelines, vector search, MCP servers, agent tooling, and evaluation of LLM output quality, as applicable to business needsContribute across the technology stack as needed, including frontend development, infrastructure, data, and direct interaction with users
Qualifications
Required
The ideal candidate will have 5+ years of professional software development experience and a bachelor's degree in Computer Science, Software Engineering, Information Technology, or a related field; equivalent education and experience may be consideredHands-on experience building AWS serverless and event-driven applications, including Lambda, API Gateway, SQS/SNS, EventBridge, Step Functions, ECS, and DockerExperience designing and building with both serverless and traditional application architectures, and the judgment to know when each is the right fitStrong experience with TypeScript/JavaScript, Node.js, SQL, and NoSQL databases such as DynamoDBStrong foundation in data structures, algorithms, complexity, software design patterns, SOLID principles, and separation of concernsExperience with AWS CDK/SAM, Git, pull-request workflows, CI/CD, and automated testingUnderstanding of distributed systems, microservices, and resilient architecture, including pub/sub, idempotency, retries, dead-letter queues, saga, and CQRSAbility to work effectively with existing systems, including reverse-engineering business logic and using characterization testing to capture current behavior
Preferred
Experience with React/Next.js, Python, Java, AWS observability and security, and software development in healthcare or other regulated industriesExperience integrating new cloud-native services with established applications, including data synchronization and migration between platformsExperience using AI coding tools effectively and critically reviewing generated codeExperience building LLM-powered applications, including RAG, embeddings/vector search, MCP servers, agent tooling, and LLM evaluationFamiliarity with C#/.NET, Angular, Azure, Jira, and Confluence
Work Environment
This position is in an office (or a home) environment with frequent use of a computer and related hardware.
A person must be able to stand and/or sit; see, hear and talk; use hands to type, handle or feel tools or controls; use hands and arms to reach.
Occasionally lifting/moving up to 30lbs is also required.
In addition, this position may require a person to travel via car, airplane, and other modes of transportation to various sites including Precision Analytical locations, stores or vendor locations, training or meeting venues, or conferences.
EEO Statement
All qualified applicants will receive consideration for employment without discrimination on the basis of race, color, religion, sex, sexual orientation, gender identity, national origin, protected veteran status, disability, or any other factors prohibited by law.