Technical Audit Identifies Areas for Improvement in Homeowner Portal Code
The Client
The client is a SaaS company with an online homeowner portal that helps developers provide additional value to their customers by giving their customers mobile access to important building information.
The Challenge
A software company with a SaaS product that was rapidly expanding in terms of complexity and lines of code needed help to manage growth.
Some of the client’s software development practices were best suited to small products with few developers that are all intimately aware of every line of code.
Their quality assurance practices, in particular, needed help.
The product was performing satisfactorily, but it was beginning to show performance problems that would affect user experience and their ability to grow their product if not addressed in the short term.
The Process
- Review code, interview client team and run static analysis tools.
- Analyse and report discoveries.
How Optimus Helped
Using a mix of in-depth code review, interviews with the client team and static analysis tools, Optimus identified a number of risks to the software.
The client’s development team was collectively aware of the technical debt that had consciously accumulated due to business decisions. Optimus identified some previously unknown sources of technical debt and provided a comprehensive view of technical debt.
Optimus identified shortfalls and inconsistencies in architecture and design and also provided solutions which would improve reliability and availability of the product. We also identified some architecture practices that were ill-suited to their particular product and that could be simplified. Documentation also needed to be improved to help new programmers write code effectively.
Optimus identified coding practices that could improve the speed and ease the maintenance and enhancement of software. Optimus also identified major bottlenecks and fixes that could keep the product running smoothly without investing in extra hardware.
We provided high-level guidance on how QA for development teams of their size is performed and provided professional guidance for their user team as they created and started to use proper test cases.
All action items were prioritized in to immediate, near future and far future categories along with an estimate for the amount of effort required in order to properly inform decision makers.
Client has implemented most of the recommendations. Overall, ROI for them has been phenomenal.