When software products succeed, they grow rapidly and often in unexpected ways. This is inevitable and natural, but at some point successful products need to transition from expanding to standardizing if they want to be sustainable for the long term. No hit feature will remain a hit if it’s buggy, slow, or stale. That’s why teams strive for reliability in their systems and their processes: so they feel empowered to improve, innovate, and raise the bar for what software can do for its users.
We highlight three recent projects in entertainment, pharmaceuticals, and ecommerce industries where we’ve used software solutions to manage growing and enterprise-scale business complexity.
Rebuilding a Legacy Database into an Adaptable System
Building on our long partnership with an international ticketing company, we’ve been helping them prepare for the day when they’re no longer so reliant on a single large, legacy database since 2015.
The main system of record for this project was written in Pascal and Assembly over several decades. Data is exported through screen scraping, with a lot of data that lives in hardcoded blocks within the code.
One of the main challenges has been to fully understand how the old system works. The 8th Light team has been helping develop an API and a read replica of the host system where we can debug basic questions received on a day-to-day basis. We’ve also been event sourcing from the legacy system, and slowly applying more of the business logic. Long-term, we will to replace all the data with our new system, which will be simpler to maintain and easier to adapt in the future.
We’re still very much trialing out how good our system is and how logic will evolve, but already we’ve gotten response time from 16 seconds down to 200 milliseconds.
Technologies: React Native, Typescript, PHP, Java, Kubernetes, CI, CD
Transforming an International Pharmaceuticals Company’s Product Team
An international pharmaceuticals manufacturing company needs help adding new skills and implementing new processes that will provide their teams with more confidence in the stability of the code, and we’re partnering with them to help slowly improve it.
We have three main workflows on the teams right now, including transforming their DevSecOps posture with exhaustive source control, streamlined CI/CD pipelines, and smart artifact management techniques. We’re also consulting with the project’s leaders to introduce and reinforce an incremental/lean mindset, and help that mindset reverberate with other teams. This also includes finding ways to slowly unwind a lot of technical complexity that accrued while the product took flight.
Finally, we’re helping improve the developer experience by documenting tribal knowledge, refactoring pain points in the system architecture, and adding a test suite that gives every developer the confidence to contribute.
We’ve been happy to be met with enthusiasm across our partner organization, with a growing network of early adopters, enthusiasts, and allies who help make our jobs as consultants much easier.
Technologies: .NET, Ansible, AWS, GitHub Actions, Java, Tableau, Terraform
Replacing a SaaS Vendor with Custom Application
When a food delivery organization replaces a SaaS vendor with a custom application, it can reduce expenses and allow for more customizations. However, it also requires a strict deadline to ensure project goals and deadlines are met. We joined the effort from the start, developing the product roadmap and helping define the product vision and MVP scope with market research.
One interesting insight has been our use of a domain-driven design technique called “event storming” to get more insights behind the product we are building. In this process, we walk stakeholders through the events happening in the software system and show what the product will do. This helps validate our assumptions and ensure we’re building the right thing, and it also helps the team rethink their own processes. Oftentimes this technique will expose new ways of interacting, removing duplication and extra steps.
Technologies: React, Typescript, Redux