Capabilities

Enterprise-grade software systems need to be versatile and powerful enough to handle the increasingly tough demands of modern data-driven organizations, so they need to encompass a large and multifaceted set of capabilities. They manage vast amounts of diverse data, integrate with other systems, require robust security measures, and depend on comprehensive software, data structure and infrastructure management.

When starting to build an enterprise-grade system, it is impossible to know which specific capabilities will be needed in the future. If your infrastructure doesn't support the capabilities required by future needs, you will need to complicate your infrastructure by integrating more technologies over time which will lead to slower and slower development with more and more bugs.

Cillers is designed to be complexity resistant, meaning that you will not need to complicate the infrastructure much when you need to add new functionality. To achieve this resistance we have mapped our all of the capabilities that most enterprise-grade systems need and designed the Cillers platform to be able to support all of those with a minimum of complexity and with minimum overhead from the capabilities that you don't need.

The following bullets describe the capabilities and components that most enterprise-grade software systems are comprised of. The Cillers platform is designed to already provide great turn-key support for most of these capabilities, and to be easy to extend with more comprehensive support in future releases.

  • Data storage and processing in enterprise-grade systems involve handling diverse types of data, each with unique characteristics and use-cases. Data needs to be stored and indexed in many different ways to support different types of use-cases, including SQL queries, vector search, full-text search, columnar, time-series, geographic and binary formats. Some data needs to be accessible in real-time and other data needs to be accessed in huge quantities in a reasonable amount of time. And, an enormous and increasing amount data need to be stored and made available for many different types of analysis in a timely and cost-effective way.

  • Large Language Models (LLMs) have become essential to most enterprise systems to stay competitive. Due to privacy concerns, many enterprises need to host their own LLMs rather than relying on proprietary cloud-based solutions. Additionally, to effectively support their unique content and service requirements, companies are increasingly training their own specialized LLMs. LLMs also pose a new set of security and privacy challenges.

  • Data integrations are crucial for maintaining a good exchange of information across different systems. This involves both ingestion of data from external sources and publishing of data to other systems. Data often needs to be transformed and processed to align with the specific data models of the system and validated to ensure data integrity. As the number of data streams increase, it becomes increasingly challenging to comprehend the data flows, so good data governance tools are essential.

  • APIs must be secured against unauthorized access and attacks as well as serve a diverse set of needs of different types clients with a wide range of requirements. Many different programming languages serve different API use-case priorities and developer preferences. And, it is crucial that the API provides a good developer experience both for internal and external developers.

  • Web and mobile application demands are similar to those of the APIs, in terns of security and privacy threats, as well as the need for a diverse set of programming languages and frameworks that serve different use-cases and developer preferences.

  • Security is becoming increasingly challenging as cyber criminals are becoming more sophisticated. If a system doesn't stay up to date with the best practices and tools for cyber security, it falls behind in the protection agains new threats that arise from increasingly competent attackers. Third-party code dependencies are among the most severe vulnerabilities that are most likely to get exploited, and controlling dependencies is one of the hardest problems.

  • Software and infrastructure management, is a jungle that often requires entire teams (dev ops) and a myriad of different tools and services that need to be set up, integrated and maintained for source control, data structure management, provisioning of resources, testing, integration and deployment.

The Cillers Core platform includes support for most of these capabilities, and will soon support even more. And, Cillers Flex makes it easy for you to integrate any additional infrastructure capabilities that may be needed for your specific needs.

The Cillers platform is designed to provide robust support for the broad capabilities described above as well as to facilitate easy expansion for more specialized needs. By building your system on the Cillers platform, you place your system on a future-proof foundation, minimizing the risk of complexity creep and setting the stage for sustained innovation and growth.

Current Cillers Support For The Capabilities Described Above

Here is a overview of which technologies we use to support the most common requirements for a enterprise-grade software system.

Data Storage, Processing and Integration

API, Access Control, And Attack Protection

We currently only support Python GraphQL in the API layer, but we plan to support all popular languages and the best frameworks in the near future. You can easily add support for other languages and frameworks using Cillers Flex.

Frontend Applications

We currently only support React for single-page web applications on the frontend, but we plan to add support for all of the best frameworks and mobile shortly. You can easily add support for other frameworks using Cillers Flex.

Software And Infrastructure Management

Last updated