Benjamin E Morgan
Verified Expert in Engineering
Software Developer
Los Angeles, CA, United States
Toptal member since July 7, 2021
Benjamin is a seasoned developer with ten years of experience in both startups and established companies. He has built many applications from scratch but can also maintain and even extend existing systems. He is experienced in leading others in large projects and enjoys building programs independently. Creating dynamic, innovative software has been a great passion of Ben's since that first "hello world."
Portfolio
Experience
- PostgreSQL - 10 years
- Java - 10 years
- Amazon Web Services (AWS) - 10 years
- Akka - 5 years
- Scala - 5 years
- React - 2 years
- Kubernetes - 2 years
- Google Cloud - 2 years
Availability
Preferred Environment
Docker, Google Cloud, Amazon Web Services (AWS), Scala, Akka, React, PostgreSQL, RabbitMQ, Redis, Kubernetes
The most amazing...
...thing that I created entirely on my own is an online store for custom 3D printed wares. I created the front end, back end, and tools for generating 3D models.
Work Experience
Scala Developer (via Toptal)
Hopper - Main
- Established the pattern for building integrations to property management systems for ingesting content and handling bookings.
- Improved the performance of the search feature by identifying bottlenecks and refactoring to support parallelization.
- Participated in on-call rotation, engaged in design discussions, and mentored other engineers in Scala.
- Assisted the data science team in their price analysis by creating custom data sets in BigQuery from a variety of sources.
Senior Software Development Manager
Clutch Technologies
- Transitioned the company from a system based on spreadsheets and post-it notes to a Scala back end, mobile apps, and internal tools for managing our fleet of vehicles and subscription customers. I was an early hire at Clutch.
- Collaborated with designers and mobile app, front-end, and back-end developers to add new features to our mobile apps and internal tools as the company transitioned from a direct-to-consumer business to a multi-tenant SaaS business.
- Built a real-time messaging platform so that customers could communicate with staff via SMS and voice calls. This system works across mobile apps and web interfaces and is built to facilitate the workflow of customers exchanging vehicles.
- Organized sprints for my team by grooming our backlog of tasks, assigning them to developers, and tracking their progress. I led stand-up meetings, sprint retrospectives and demoed new features to the company before deployment.
- Participated in bi-weekly deployments and debugged issues when they arose. Our deployments were highly automated with Terraform and Liquibase.
Software Engineer
Altisource Labs
- Refactored legacy code into microservices in Java with Spring Boot.
- Utilized S3 and other external APIs to provide robust services for internal applications.
- Worked to build a core set of applications to reduce duplicated effort across other engineering teams across the company.
Software Engineer
inBloom
- Worked with a newly formed team to take over the development of the core application from the large team of contractors who had developed it.
- Fixed bugs in the core platform and maintained an extensive end-to-end automated test suite.
- Worked to build an "app store" gateway to the core platform, enabling developers to offer their education technology to school districts in a secure way.
Senior Software Development Manager
VeriFone
- Developed many features of a touch screen appliance that integrates with a point-of-sale to advertise products at checkout in convenience stores.
- Reverse-engineered the serial data from various point-of-sale systems so our appliance can have richer information.
- Helped resolve technical issues with the device in-person and remotely.
Experience
Wonderfab
Technologies used:
• Backend: Scala, Akka-Http, PostgresSQL
• Frontend: JavaScript, React, three.js
• Deployment: Google Kubernetes Engine, CloudBuild, CloudStorage
Integrations:
• FusionAuth
• Stripe
• Shapeways
• TaxJar
• SendGrid
Clutch Technologies Platform
http://driveclutch.com• Sign up for service by providing their driver's license information, address, and payment information.
• Request to have a new vehicle delivered to them or exchanged for another vehicle at any time.
• View their account information.
I also built numerous tools for internal use by the company. In the beginning, these were templated pages built using twirl. As the size of the company grew, we began implementing these UIs with React. These tools included:
• Pages for screeners to review the driving record of customers after they signed up.
• Tools to manage the fleet of vehicles and the day-to-day process of exchanging, cleaning, and inspecting vehicles.
• Configuration pages to manage pricing, verbiage, and images displayed in the mobile apps.
I also built a back end for a new mobile app used by a concierge. A concierge delivers vehicles personally to the customers. The app featured:
• A schedule of the deliveries assigned to the concierge for the day.
• For each delivery, a workflow to guide the concierge through the process.
Clutch Technologies DC-Dash
http://driveclutch.comI initially built this system using Layer (now defunct) to handle the real-time push of messages to mobile and web UIs. One day, I observed that Layer had lost some messages that we had sent through and was not functioning as documented. I submitted a ticket to them with specific details of the issues, but they never responded. I recommended that we replace Layer, designed a system to replace it and a plan to migrate to the new system. The team agreed we should build a replacement ourselves.
After we had fully replicated Layer's functionality, we were told they were going out of business in 30 days. Had I not observed these issues and advocated for a replacement, we could have had a major issue finding a replacement in time.
Drive by Pi
https://www.youtube.com/watch?v=qssUHQXRZPkEducation
Bachelor's Degree in Computer Science
North Carolina State University - Raleigh, NC
Bachelor's Degree in Applied Mathematics
North Carolina State University - Raleigh, NC
Skills
Libraries/APIs
React, OpenGL, Three.js, Akka Streams
Tools
RabbitMQ, Terraform
Languages
Scala, Java, C, SQL, JavaScript
Frameworks
Akka, Spring Boot, Play, Finagle, gRPC
Platforms
Docker, Amazon Web Services (AWS), Kubernetes, Twilio, Raspberry Pi
Storage
Google Cloud, PostgreSQL, Redis, MongoDB, Google Cloud Spanner
Other
Calculus, Differential Equations, Linear Algebra, WebSockets, OpenSCAD
How to Work with Toptal
Toptal matches you directly with global industry experts from our network in hours—not weeks or months.
Share your needs
Choose your talent
Start your risk-free talent trial
Top talent is in high demand.
Start hiring