Code Engineering

Logica wordt in een derde generatie programmeertaal uitgeschreven. Verificatie logica wordt in de vorm van unit en behavioral tests ook in code geschreven. Deze combinatie vormt de basis om domein gedreven software oplossingen te realiseren. De domein logica moet ook ontsloten worden naar schermen, de state moet opgeslagen kunnen worden in een database, mogelijke communicatie met andere domeinen moet opgezet worden, etc. Het moet geïntegreerd worden met het platform. Deze integratie wordt door de code engineers geïmplementeerd. 

In de praktijk wordt gebruikgemaakt van uiteenlopende derde generatie programmeertalen. Dit kunnen imperatieve talen als Java, JavaScript/TypeScript, C#, Kotlin, Go Python en declaratieve talen als YAML, SQL, HTML zijn.


Binnen Sogyo wordt hierbij veel gebruikgemaakt van engineering concepten als Domain Driven Design (DDD) en Behavior Driven Development (BDD) om tot oplossingen te komen. De levenscyclus van de code-bases speelt daar een grote rol bij. Het toepassen van Continuous Integration en Continuous Delivery is dan ook een voorwaarden.

Het target platform speelt een grote rol. Draait de oplossingen op een eigen infrastructuur of juist een cloud omgeving als AWS, Azure of GCP. De deployment vindt hoe dan ook geautomatiseerd in code-stijl plaats. Daarnaast kan het platform een faciliterende invloed op het software design hebben, zeker wanneer cloud native geëngineerd wordt.