Post Mortem Discussion
The Gunner Team breaks down the project
Check out wireframs of this project
Check out photos of this project
Check out architectural diagrams of this project
What was the problem to be solved?
Nu-Bath president, Mike Cusumano works with commercial entities such as hotels and resorts, offering them a better solution to a common problem.
As anyone with an old bathtub or who's stayed at a hotel knows, the bottom of bathtubs wear out.
Firstly, the bottom of the tube doesn't actually touch the floor, so there is a gap that compresses and pops back up when stepped on.
After repeated use (usually just over a year), the bottom begins to wear out and eventually cracks.
At hotels and resorts (and even homes), replacing the tubs every year isn't feasible, so the solution has been to put a bathtub liner over the bathtub.
This hides the crack and prevents some leakage, but just masked the problem.
The liners are put over top of the tub and a material is put between the liner and the tub to give it cushion.
However, because the liners either aren't sealed or crack themselves, moisture gets between them and sits there, eventually creating mold.
This has led to lawsuits against hotels.
Mike has a different solution that involves creating just a new floor and using a cutting-edge adhesive to bind the surfaces, leaving no room for moisture.
These floors are much better, too, and Mike offers a life-time warranty for them.
The problem, however, is that Mike is filling so many orders, keeping up with them is tough.
Currently, whenever there is a tub that needs to be replaced, he, or someone else familiar with the technology has to go to the site and take exact measurements of the broken tub.
This isn't ideal as Mike is filling orders across the country and can't be everywhere at once.
As an attempt to solve this problem, Mike encouraged foreman, working for the hotel/resort, to take a photo of the tub and send some basic measurements so he could create the floor from the photo.
The problem, however, is that if the photo is not taken when the phone is level, the photo isn't useable because it distorts the dimensions.
What was the proposed solution?
After discussing the problem, Gunner and Mike concluded that a downloadable mobile app that automatically takes a photo when the phone is level would solve this problem.
The foreman would stand on a raised level, tap a button and then the app would wait for the phone to become level and take a photo.
The foreman would then add two basic measurements, and the app would email this information directly to Mike.
What challenges arose during the project?
Collecting the measurements via a form and then emailing the data is simple.
Even automatically taking a photo is easy.
The challenge is figuring out when the phone is level.
What was the technical approach to the project?
With a tight deadline, Gunner wanted to use as much existing code as possible, so it will leverage Open Source technologies whenever possible.
Because the app must be available on both iOS and Android devices and be downloadable from both app stores, Gunner will build it using React Native.
Additionally, Gunner will use the Expo SDK, which makes taking photos easy.
Expo also offers a consolidated API for the phone's gyroscope, which Gunner can program to alert the app when the phone becomes level.
The app won't be storing the data - only passing it along via email, so Gunner will use Amazon SES to send the emails and Amazon Cognito and AWS IAM through AWS Amplify to authorize and authenticate access to SES so the email server can't be used by anyone else.
The photos themselves will be stored on Amazon S3.
Prior to deploys, the app will run automated tests on itself using Jest to make sure no bugs have been introduced.
What was the project management approach to the project?
Gunner will use the Agile model to manage the development of this application.
Each sprint or iteration will last one week and end with a deployment of the app.
What platform was built for this project?
The architecture for this project is minimal as the only backend component required is the email server, which Amazon will fully manage.
As always, Gunner created a separate AWS account for the new client and manages it from the parent organization.
This protects each client in the case of a breach.
What did you learn from working on this project?
How did this project benefit the client?
With the new app, Mike will be able to fill more jobs at less cost.
Additionally, since the photos will be accurate, he will save cost on inaccurate deliveries.
Why was Gunner selected for this project?
Mike already had bid this project out to a couple other companies, but neither could deliver.
Gunner offers all new clients a 30-day, risk-free trial with our services, so Mike doesn't have to worry about being burned again.
On top of that, the total project timeline was less than 30 days, so the initial buildout should not cost Mike a dime.
What tools, techniques and methodologies were used on this project?