Get the latest tech news

What Have We Forgotten?


This is the story of an organization that seems to have forgotten basic software engineering concepts. This organization does exists and has these exact problems, but it is also a generic story about similar organizations that abandon engineering excellence for their own peril.

The organization being highly compartmentalized, developers did their their own migration from EJB to Spring and then Spring Boot where the likes of JPA and ehcache created lots of state within the application instances... which, given the absence of an application server that synchronized state among instances, resulted in spurious race conditions that are often resolved via manual reboots because... we have forgotten how to make distributed apps. Java backend is accessed via API Gateway on separate domains like backend.serviceprovider.com that are protected by the Authorization: header that should contain a signed JWT. Users are now required to authenticate every time they switch from one single-page application to another, because JWT tokens live only in the context of the JavaScript execution, thus rendering the use of Single Sign-On OAuth 2.0 workflow totally moot.

Get the Android app

Or read this on Hacker News