Principal Software Engineer
CurrentBrink point of sales cloud-based software targeting fast casual restaurants which runs on multiple third-party hardware solutions. The software itself had two main areas, in-store and above-store and employs a SaaS model. Tasked with modernizing the existing monolithic system.Responsible for leading a team of 8 to transform a monolithic SaaS PoS system to a cloud-based micro services architecture utilizing AWS Lambda, EKS, ASP.NET Core, API Gateway, SNS, SQS, DynamoDb, S3, Redis, and Aurora Postgres while stabilizing, scaling, and of course modernizing the existing legacy system.Serve as one of two primary lead architects responsible for designing and implementing a .net Microservices platform focusing on scalability, team isolation, and iterative replacement of existing system, this utilized both server less and containers.Play both a strategic and hands on role, leveraging over six years of evolving techniques, practices, and ultimately getting changes into production to transform the existing monolithic system while balancing enablement of the product roadmap.Bring new-to-company architectural approaches like Microservices, legacy strangulation, true CI/CD with a multi-honed testing strategy utilizing automated unit, integration, and functional testing across multiple environments, enabling event driven and loosely coupled, distributed systems.Provide technical leadership, team mentorship in best practices, and champion adoption of modern day software practices to transform a small team of developers to a large, co-located development team.Aid in Data Lake initiative which synchronizes in-store state into the cloud utilizing S3, Kinesis, Lambdas, and the outbox pattern as well as migrating a historical data system to RDBMS/JSON hybrid model while being 100% backwards compatible.