Ben Crouse
Principal Software Engineer
Richmond, VA
Talented Software Developer with over 15 years of experience in software design, development, and maintenance. Proven ability to collaborate with stakeholders and developers to deliver successful solutions in an agile environment. Experience with software architecture, including evaluating trade-offs and capability assessments to produce optimal designs. Proficiency in various programming languages, cloud environments, and development frameworks.
Professional Experience
Principal Software Engineer
CarMax
- As Lead Developer of the Offer Platform team, I create architectural designs, refine work items, and provide guidance to developers
- Participated in system design for the new vNext platform, including being responsible for the architecture of my team's components and working with the Solution Architect for cross-team integrations
- Participated in Instant Offer Verification by developing an architectural plan for my team and doing development work on our micro-services
- Co-leader of a cross-team project to improve Instant Offer scalability to 20x providing meaningful improvements in performance and scalability
- Planned and facilitated chaos gamedays to find weaknesses in our monitoring and alerting, as well as provide hands-on support experience for the team
Senior Software Engineer
CarMax
- Addressed a memory leak issue that caused regular downtime in Connect, which other developers were unable to identify the root cause of
- I was the primary back-end developer of Offer Hub and led the API design and development. My experience with service development enabled me to design a loosely coupled API that enabled us to implement new features quickly while minimizing the impact on existing features
- Participated in the development of Instant Offer as part of the small team before the product was publicly announced
Senior Software Developer / Application Architect
Paymerang
- Architected and developed a new product designed to bridge integrations with the company's product and third-party systems
- Lead adoption of new technologies, including Node.js, .NET Core on AWS Lambda functions, and Selenium for testing
- Created pipelines to build and deploy code with a reliable and repeatable process
Senior Consultant
SingleStone
- Provide expertise on projects by using both experience and quickly learning new technologies to be productive on a project from the start of the client engagement
- Designed and delivered a solution using the actor pattern implemented in Akka.NET, capable of prioritizing a list of clients to call in real-time while responding to multiple factors that affected the order of the list
- Rewrote a legacy application for a Fortune 500 company using Node.js and Angular
- Developed serverless web applications using AWS Lambda and Azure Functions
Software Developer
The Payments Company
- Worked directly with CTO to provide guidance on developing innovative solutions
- Participated in the full software development lifecycle as part of the company's small development team
Senior Software Developer
CarMax
- Developer on the Merchandising team responsible for all parts of the software development lifecycle, including participating in on-call support
- Took over as the primary developer on a large payments project (Match and Pay) and also took on the responsibility of the ESB development for this project
- Part of the initial team for a new development project to replace a paper process (Connect)
- Worked with the Solution Architect for the initial design of the project and presented to the Architecture Review Board
Developer
Pembrooke Occupational Health
- Web Developer responsible for maintenance and new development of a document management system
- Worked with project managers to define business requirements before designing and implementing solutions
- Worked with many other systems, including the customer website, for drug test scheduling, reporting systems, and data interchange
Web Developer
Salem Web Network
- Web Developer in the Development department working with high-traffic websites and content management systems
- Primary developer on several websites and worked closely with the editorial team in charge of content
- Development done in ASP.NET or ASP.NET MVC using C# or VB.NET
Software Engineer
Torrential Data Solutions
- Software Engineer in the Product Development department developing and maintaining Torrential Data's proprietary document management product
- Maintain several versions of the product, including client/server versions of the application and an ASP.NET web version
- Development was done in VB.NET and C# or VB and Visual C++
Skills & Expertise
Languages
C#JavaScriptVB.NETSQLLINQC++Java
Programming Tools
Visual StudioVS CodeNCrunchResharperLINQPadEclipse
Unit Testing
MoqRhino MocksNUnitxUnitKarmaJasmineChai
Web Technologies
AngularJS/AngularASP.NETASP.NET MVCNode.jsHTMLCSSSASSjQueryIISAJAXRazorJSON
Databases
CosmosDBMicrosoft SQL ServerMongoDBAzure Storage
Education
Bachelor of Science, Computer Science
Virginia Tech
Blacksburg, VA