System architecture and technologies
Once we know what kind of capabilities and features we must implement to advance with our vision of the ideal solution, we can start identifying the system architecture and technologies we should use to enable them.
Our approach mandates bringing a toolset most applicable to the task and not attempting one-size-fits all. Python, NodeJS, C++, Kafka, Apache Camel, MariaDB, PostgreSQL or Oracle – these are nothing but building blocks.
Unless it is totally inapplicable, we always use Kubernetes and we like using standards such as OpenID. DevSecOps is an major pillar of our operations and system design.
The output from that stage generates software bill of materials (SBOM ) – components we are going to use, and a solid system architecture diagram describing the overall structure, relationships between these components and the data flows.
Also, at that stage we encourage the customer to run a small PoC to clarify both requirements and technology concept. While this brings certain costs forward without achieving results in terms of the practical deliverables, it allows to significantly improve all stakeholders’ understanding of the situation and uncovering potential conceptual and technical issues.
And finally, we can move on to the infamous triangle of “features-time-money”.
Learn about the next step in Senticore’s methodology – Project Economics, Execution and Beyond