The motivation

TRP was an experiment at developing a bespoke ERP/CRM system that represented 1:1 the “lean and mean” business processes of TECTRA Ltd, instead of increasing complexity of the company’s operations by force-fitting a commercial off-the-shelf ERP/CRM software onto the company.

Data security and obscurity from third-party software suppliers in the Greek market was another driver behind this experimental development and other offshoot software the resulted from this.

Developing a throw-away prototype

The software was developed into a working prototype over a period of 2 months, utilizing Django with SQLite as the backend, Django Admin as a stand-in for a barely-sufficient UI, and Django Rest Framework (later exchanged for Django Ninja) to expose data via REST.

The numerous interconnected models implemented in order to capture the existing business processes from end to end, ultimately mean that the complexity exploded from early on. Short trials over a few days confirmed that the only way the system could enter productive use would be after the laborious implementation of a consistent UX/UI across all parts of the application.

Regardless, in the spirit of “throw away your first implementation”, the development experiment of TRP delivered a lot of insights on how to model the various domains and processes, as well as (most importantly and in the spirit of 80/10 thinking) clarity on which parts of the system deserved to be digitalized at all.

The foundation of microservices development

Namely, the short trials showed that some of the data that we initially intended to capture and interrelate were entirely nice-to-have, purely informational and delivering no actionable insights. “Boiling the ocean” would therefore impose the very same “straitjacket” that we hoped to avoid, causing a high effort for the entry and association of data, an effort that was unlikely to deliver any business value in retrospect.

The key take-away from this experiment was the “parking” of the idea of a monolithic application. Instead, in 2022 I used the knowledge gained in the development and successful establishment and (since then) daily use of numerous APIs/microservices only for the most valuable of business domains and sub-processes.

OVERBRING software
TRP (TECTRA Resource Planning) 2021
/images/software/stack/Linux.png Linux
/images/software/stack/Python.png Python
/images/software/stack/Django.png Django
/images/software/stack/Django Ninja.png Django Ninja
/images/software/stack/SQLite.png SQLite
Proprietary Deprecated