Platform Engineering

Post Image

K8s Security Context: Optimizing fsGroup for Faster Pod Starts ⏰

In a data pipeline architecture, it is often challenging to efficiently read a batch of messages from Kafka and write them to AWS S3 while reducing storage costs. To achieve this, Apache Flume was employed, an effective tool for collecting and moving large amounts of log data in real-time. This use case revolves around reading messages from Kafka in bulk, and then buffering them temporarily before transferring them to S3 in larger batches. This batching mechanism helps reduce API calls...

Read

A mobile money app powers digital wallets of multiple telecom service providers

A multi-tenant cloud-ready platform drives market leadership, leveraging modern design paradigms. Comviva is a mobile banking solutions provider and caters to over two billion platform users globally. The company's digital mobile wallet is used by telecom providers to provide financial transaction capabilities on telecom networks largely focused in Africa and Middle East, South America, and Southeast Asia markets. To secure market leadership, the company developed a multi-tenant cloud-ready platform, in partnership with Sahaj Software, to power mobile wallets for various...

Read
Post Image

An Artisan’s Way of Data Fetching in React

In React applications, one of the most frequently executed tasks is to use the backend APIs and fetch data using fetch/axios/similar libraries and render it using the component. So, generally, the code has the following parts:React state to store the result of the API call as well as state to show the beautiful spinnerFunctional call to the API (most probably in useEffect)Statements in useEffect hook to update the state of the resultCatch statement to show errors related to API (alert...

Read

Unifying SEEK’s Complex Data Ecosystem for Business Transformation 

SEEK is a market leader in online employment marketplaces with a multinational presence spanning Australia, New Zealand, Hong Kong and South East Asia. In addition, SEEK has minority investments in China, South Korea and several other countries. In 2014, SEEK acquired leading employment marketplaces in South East Asia, JobsDB and Jobstreet.  We partnered with Seek to implement the Unification programme - an ambitious plan to merge diverse systems from various geographies into its existing Australia and New Zealand platforms. A...

Read
Post Image

Solving the Silent SNS Alarm Issue in SQS Workflow: An Interactive Dive into a Step Function Solution

In the realm of SQS workflow management, I encountered a perplexing issue with SNS alarms. Previously, I relied on SNS alarms to notify me when messages populated in my SQS queues, especially when they found their way into the Dead Letter Queue (DLQ). However, the alarms seemed to stay silent when my workflow triggered multiple times, causing messages to accumulate in the DLQ. Upon closer inspection, the root cause surfaced: the SNS alarm remained in an ALARM state, because the...

Read

Creating a habit: Refactoring

For more visibility posting this on medium. The original article is posted on my website. :) I want to start this blog with Kent Beck quote I am not a great programmer. I am just a good programmer with great habits Having these great habits while developing software is essential. These habits show your commitment to your work and the quality of the software you want to deliver. In this blog, we are going to talk about one of those habits. . Before we...

Read

Making Sense of Parser Combinators

Initially, I started this post with the protocol I wrote a parser for, but since the post became big and complicated — it was probably worth breaking it down into a smaller piece. Our aim is to write a simple parser from scratch and parse a number from a String. For this post let’s scope it down to positive numbers (unsigned integers). The first question that arises is: why do we need to start from scratch? We could utilise existing...

Read
Post Image

Running your Postgres on a VM— Configuration changes for Resiliency

Photo by Kevin Ku on Unsplash The purpose of this article is to highlight certain configurations that you might need in case you want to run your own postgresql. There is a slight difference between running it locally and deploying postgres in production. Therefore, I decided to write down the configurations that one needs to change in order to get it up and running. I will attach some code towards the end I want to run postgres on Docker (or compose), will this article be helpful?...

Read

Building a Smart Campus with Custom-Built Platform Engineering and IoT Solutions

The Indian Institute for Human Settlements (IIHS) is a national education institution committed to the equitable, sustainable and efficient transformation of Indian settlements.  One of the key motivations driving this transformation is to demonstrate a campus that incorporates all levels of sustainability in keeping with the UN Sustainable Development Goals. To bring this vision to life, IIHS chose to partner with us to design a purpose-built solution leveraging platform engineering and IoT for its Kengeri Campus that would serve as...

Read

Transforming Out-of-Home Advertising with State-of-the-art Products

Talon, a specialist Out-of-Home (OOH) agency, embarked on a digital transformation journey in partnership with Sahaj, aiming to re-imagine OOH by utilizing technology to not just automate, simplify and optimise outcomes but also incorporate cutting-edge technologies to make the medium attributable. Three purpose-built platforms emerged from this collaborative journey: Plato revolutionizes OOH inventory management by aggregating paper and digital inventory across multiple markets into a single intuitive campaign planning and delivery system. It allows users to explore, plan, check availability,...

Read