Type Engineering

Type Engineering is a Modelling Language primarily for web applications, although it applies to any Software domain in general. It works as a central cog between all components in a system, seamlessly connecting all stack layers and transforming the way we engineer software.

type engineering logo animation rotating cogs

⚙ Back End Servers:

Stop writing fragile implementation-specific code and start designing your models by applying the best OOP practices.

⚙ Front End Interfaces:

Have your JavaScript utilise the same type system as the server written in any technology, including Java, Python or Go.

⚙ Database Persistence:

The data isn't just a bunch of documents, it's a solid artifact of real-world processes that is typed against your requirements.

⚙ Team Communication:

Get every one on your team see the broader picture and let colleagues collaborate on the greater vision effectively.

section break

How Type Engineering Works

Yes you might have had an vague feeling that the current approach to building software with many components possibly in different languages isn't as smooth as it should be and involves gaps in developer experience as well as unoptimised labour-intensive manual processes like creating REST APIs by hand.

What can be done better and how Type Engineering offers to solve your problems, save time and make everyone on the team happy?

screw design element
screw design element

1. Research and Design your new Software System via Types


Software isn't about writing code as many believe. Unfortunately, the level of web culture has been in steady decline due to the abundance of frameworks, which replace the essentials: the developer skill, intuition and expertise. Instead, we find ourselves in immense technical debt and without control.

What our profession is really about is solving business problems by gathering requirements, designing a product and only then implementing and testing it. This is what we've been taught and then learned to forget. We call to go back to the beginnings and begin doing things right, starting with types design.


2. Prototype and Model your Implementation via ABCs

We live in strange times: our crucial design decisions are hard-coded into a programming language, or a database schema. The types, which are meant to be the wireframe of the overall system architecture, are entrapped and we can't make efficient use of them.

Let's take a step back and take them out. Now, we can generate abstract classes for any language, while preserving the common thread of understanding between team members. The result — absolute developer experience and job satisfaction. It's so nice to be a developer again!


3. Integrate and Connect your Components via Piping

Let's face it: REST APIs are a failed attempt at concealing the lack of appropriate tooling that would allow for different parts of the system (such as UI frontend + Business backend) to communicate. Writing standard HTTP routes is, well... plain boring.

Instead, you need a robust, easy way to invoke code and pass messages between integral parts. Once the types are modelled, this is easy with our ouf-of-box RPC solution powered by protocol-buffers. It will automatically build the piping for the control and information flow, while you sit back and relax.


Stay In Touch

Follow On Twitter!: typeengineering. Join Keybase Group!: typeengineering

The easiest way to receive updates, is to subscribe for web-push, if your browser supports it. Always be among the first to find out about great offers, exciting products and programming articles!

Loading web-push...

Type Engineering Mailing List

Please join the type.engineering list to be notified of new articles and promos.
The website is using 3rd party cookies for: Sonetel contact widget, Google Forms. No browser analytics. If you don't agree, please close the website and clear the cookies.