Choosing the right tool for Stateful orchestration: Embedded Process Engines vs Serverless Step Functions

Just based on recent experience, I am going to put this out there – AWS Step Functions are great for technical state machines which move from one-activity to another but not really designed for stateful process orchestration and definitely not for implementing SAGA Serverless Step Functions from AWS or BPMN Engines? When building microservices, theContinue reading “Choosing the right tool for Stateful orchestration: Embedded Process Engines vs Serverless Step Functions”

How to pull a reverse-Conway to deliver Products vs Projects: Domain Centric Product Teams

Modern software engineering is oriented towards building networked distributed features for a highly connected and web savvy customer base in varying contexts. Traditional team structures within the enterprise have evolved from technical SME cliques as engineers who “Ate lunch together wrote Software together” Good product strategy requires thinking about product features are built by engineeringContinue reading “How to pull a reverse-Conway to deliver Products vs Projects: Domain Centric Product Teams”

A Pandemic, Open APIs and Citizen Science: Its 2020 baby!

Human societies have been hit by pandemics through the ages and relied on the central governing authorities to manage the crisis and disseminate information. I believe this time around with COVID-19, our societies have access to more information from our governments because we have the internet If this pandemic is an evolutionary challenge, then ourContinue reading “A Pandemic, Open APIs and Citizen Science: Its 2020 baby!”

Microservices for orchestration: How to apply the stateful process adapter pattern

What are stateful microservices? Microservices holding state while performing some longer-than-normal execution time type tasks. They have the following characteristics They have an API to start a new instance and an API to read the current state of a given instance They orchestrate a bunch of actions that may be part of a single end-to-endContinue reading “Microservices for orchestration: How to apply the stateful process adapter pattern”

Observability in distributed systems: Monitoring, Logging, Auditing and Historical analysis

“Knowing the quality of your services at any given moment in time before your customers do and using this information to continuously improve customer experience is part of modern software delivery and critical to the success of organisations” In this post, we present why it is important to observe and manage our systems and solutions proactively andContinue reading “Observability in distributed systems: Monitoring, Logging, Auditing and Historical analysis”

De-mystifying the Enterprise Application Integration (EAI) landscape: Actors, terminology, cadence and protocols

Any form of Enterprise Application Integration (EAI) [1] work for data synchronization,  digital transformation or customer self-service web implementation involves communication between the service providers and service consumers. A web of connections grows over time between systems, facilitated by tools specialising in “system-integration”; this article covers how the clients, services and integration tools communicate andContinue reading “De-mystifying the Enterprise Application Integration (EAI) landscape: Actors, terminology, cadence and protocols”

Tackling complexity: Using Process maps to improve visibility of integrated system features

“Entropy always increases “– second law of thermodynamics Enterprise systems are similar to isolated physical systems, where the entropy or hidden-information always increases. As the business grows, our technology footprint grows as new systems are implemented, new products and cross-functional features are imagined and an amazing network of integrations emerge Knowing how information flows andContinue reading “Tackling complexity: Using Process maps to improve visibility of integrated system features”

Raspberry Pi Setup – Part II: IoT API Platform

Intro This is the second part in a series of posts on setting up a Raspberry Pi to fully utilize the Software & Hardware functionality of this platform to build interesting internet of things (IOT) applications. Part-I is here https://techiecook.wordpress.com/2016/10/10/raspberry-pi-ssh-headless-access-from-mac-and-installing-node-processing/ … this covered the following: Enable SSH service on the Pi Connect to Pi without a display or router –Continue reading “Raspberry Pi Setup – Part II: IoT API Platform”

Complex Form Evaluation with Drools

Introduction Complex business rules are best implemented using a ‘Rules Engine’. Drools is an open source Business Rules Management Product. See here   In this blog we will cover a few basics of using the Drools rule engine, specifically using a Domain Specific Language (DSL) which is a language that is more user focused. TheContinue reading “Complex Form Evaluation with Drools”

Why is this not an API contract?

Why is this … my Swagger UI, generated from code not a contract? It describes my service, therefore it must be a Service Provider Contract. No?  This was a common theme for a few of our clients with mobile/web teams as consumers of enterprise services.  Service providers generated contracts, and would sometimes create a contractContinue reading “Why is this not an API contract?”