Software Engineer
Procaresolutions · Denver, CO; Atlanta, GA · Posted Jul 8, 2026
Apply on company site Track it in JobSkout
About Procare
For over 30 years, Procare Solutions has been dedicated to empowering early childhood educators by providing products and services that enable them to focus on the care, safety and education of children. We recognize the responsibility that comes with nurturing and educating children, which is why our child care management solutions are designed to automate business processes, help ensure safety and compliance, communicate with families and provide educational resources and training to help teachers and children thrive.
Over 40,000 satisfied customers have chosen Procare Solutions as their trusted partner in providing exceptional care for young minds.
A Little About the Role
As a Software Engineer, you will help build and run Procare Pay, our payments processing platform that powers credit card and ACH transactions for childcare businesses across the country. You'll work across a modern, event-driven AWS architecture — from ASP.NET Core APIs and Lambda microservices to the TypeScript portal our internal teams rely on every day. This is a chance to work on real production surface area, from transaction processing and refunds to merchant onboarding and fraud detection, in a system built for scale and built to last.
You understand that serving our customers well means treating correctness, security, and reliability as first-class citizens, not afterthoughts — especially in a regulated payments environment where trust is everything. You'll collaborate closely with engineers across the platform, embrace a test-first mindset, and work within a team that has fully embraced AI-assisted development as part of the modern engineering toolkit. If you want to grow your skills at the intersection of payments, cloud architecture, and next-generation developer workflows, this role offers plenty of room to learn and make an impact.
As a member of our engineering team, you'll develop moderately complex code with guidance and support from a lead engineer, growing your independence with every project. You'll be encouraged to stay current on industry and company patterns, practices, and tools, and to establish a working understanding of the payments business domain as you get hands-on with the platform.
What you’ll do:
Build backend services in C#/.NET 10 — including ASP.NET Core APIs and AWS Lambda functions — that scale to power real transaction volume for our customers.
Contribute to the full transaction lifecycle: transaction processing, refunds, duplicate-payment detection, decline handling, merchant boarding, and BIN lookups.
Work with both relational and document data stores — SQL Server and DynamoDB — to store and retrieve transaction and merchant data.
Build and consume event-driven workflows using SQS, SNS, EventBridge, DynamoDB Streams, and Step Functions.
Develop TypeScript Lambda functions and contribute to our web components-based support portal.
Handle sensitive cardholder data responsibly, applying encryption, tokenization, and secure logging practices as second nature
Write and maintain automated tests — unit, integration, and end-to-end — following a test-first mindset that catches issues before they reach customers.
Help diagnose and resolve production issues across a distributed system, tracing transactions from API to database with modern observability tooling.
Contribute to the CI/CD pipeline and infrastructure-as-code changes for the services you work on.
Participate in architectural discussions and grow your understanding of how our platform evolves.
Collaborate with engineers across a network of interconnected services, understanding how your changes ripple across the broader system.
Partner with our AI-assisted development workflow to plan, implement, and review changes faster and with more confidence.
Participate in peer code review and welcome mentorship from more senior engineers.
Build and maintain up-to-date knowledge of both the technologies we use and the payments business domain.
Collaborate with Product Managers to understand requirements and help bring new features to life.
Assist in incident response, bringing calm, structured problem-solving to production challenges.
Work both individually and collaboratively with other members of the team
Collaborate with stakeholders across Design, Product Management, Operations, and Engineering to define project scopes and technical requirements.
Develop and deploy features across the tech stack.
Write maintainable code while iterating and shipping rapidly.
Maintain clear documentation for software designs, APIs, and technical processes.
Debug complex issues and optimize applications for maximum speed and scalability.
Ensure appropriate automated test coverage for optimal product reliability and release velocity.
Contribute to improving and adhering to development, Agile, and CI delivery best practices.
Present new ideas and respectfully debate those ideas with the team.
Our ideal candidate will have:
BA/B…