Accelerator Reference Design Which Speeds Up Development and Saves Clients Money

At Integral, one of the ways we optimize for speed-of-delivery and scale is development of our Accelerator Intellectual Property, specifically reference designs and code components to implement repeatable software patterns. Our repertoire of Accelerator IP helps us save on effort and pass on the resulting cost-savings to our clients while we as a software development team focus on more complex and creative work.

Here we describe our Accelerator IP for creating web-applications. This is the technology stack and design pattern which we use when we have full flexibility in creating a net-new product. Of course, sometimes we have to working within the parameters and tech stack set by our clients (e.g. choice of language, DB, etc) however, the design pattern is usually consistent with this.

Overall Architecture

A database-backed web-application in 3 layers: persistent storage, backend service and a user-facing Frontend application.

 

Persistence Layer

This is where business application data, analytics data, AI Model data and other kinds of data is stored. We typically use a Relational Database (MS SQL, MySQL, PostgreSQL, etc). The transactional systems we build to help our clients digitize their workflows are typically more aligned with structured, normalized relational Data Models rather than a NoSQL schemas. We do have deployments with NoSQL, but typical systems require us to use SQL.

Data Model / Entity Relationship Diagram

 

Backend Service

The backend service enables access to application data. Depending on the application, the backend service could also contain an AI/Machine Learning module which enables the delivery of value via non-deterministic, probabilistic artificial intelligence.

The backend service provides a REST API for the Frontend app to enable users to view and interact with the system. Additionally, the Backend service provides a functional user-interface for administration of data within the system. Our framework of choice is typically Python, Django and Django REST, however, we do work in Ruby on Rails, Go, Node as well.

 

Frontend Application

This is the in-browser app for users to interact with the application. We specialize in building highly customized and modern applications using React. We use Bootstrap as well as Material UI as the design system in our custom applications.

 
Previous
Previous

The Co-op Experience at Integral

Next
Next

How it’s like to work as a software developer at Integral