Platform Engineering

Post Image

DOOH programmatic bidding: Scaling to ~15K requests per second with Java — Part 1

We work with Talon Outdoor in the out-of-home advertising (OOH) industry that utilizes billboards, transit stations, shopping centres and other similar places to deliver brand messages to a wide audience in public places. As part of building applications that allow Talon to buy out-of-home media, we built a demand-side platform (DSP) that helps them programmatically purchase digital out-of-home (DOOH) inventory which consists of digital screens placed in public places. A DSP provides a centralized interface for targeting specific audiences and optimizing ad...

Read
Post Image

Test Driven Generation — Use AI as a pair for programming.

Written by Amitb and Vighnesh Pathrikar Test Driven Generation Cycle Have you ever found yourself struggling to refactor your code to adhere to SOLID principles or convert user requirements into code? Did TDD or Test-Driven Development feel slow? Have you ever wished for a tool that could make this process easier and more efficient? Well, look no further! With the latest generative AI solution, ChatGPT, you can now easily refactor your code, convert user requirements into code, and even create tests — all...

Read
Post Image

Building secure systems with PII Data Protection Techniques — Part II

In the previous blog, we discussed the importance of securing PII and sensitive data points captured by enterprises as part of their business apps, analyzed different techniques of securing these data points namely, Encryption and Tokenization, and finally, compared these different techniques. Continuing in this blog series, we will now cover the database-side encryption technique of sensitive data with Spring Boot and Hibernate Technologies. Information on this topic is limited, incomplete and fragmented across different websites, documentation, and blogs. This blog...

Read
Post Image

Building secure systems with PII Data Protection Techniques — Part I

Today, storing a person’s KYC information, credit card/debit card information, or other similar sensitive details to charge for services availed on a platform is commonplace. This entails storing & dealing with Personally Identifiable Information (PII) and sensitive financial information. Hacking of such systems can expose businesses to the following risks: Customer identity theft results in financial losses and damage to an individual’s credit score. Loss of trust and reputation of the enterprise in event of data breach and exposure. Legal...

Read
Post Image

Provision Multi-Region/Multi-Environment Infrastructure with Terraform

Multi-Region/Multi-Environment Deployment Recently I had a challenging problem to solve, where I need to extend a Data Product that serves clients in a single region to clients in another region. Considering different data Laws in different countries I had to provision an entirely new set of infrastructure in the new Region with multiple environments and run the exact same product. Almost all of the blogs and documentation available online gave partial solutions, it either helped in provisioning infrastructure in multiple...

Read
Post Image

All that you need to know about gRPC and Protocol Buffers

Written by Karthik Ruthiravelu Are you building your application with a Microservices architecture? Are there too many microservices in your application and wondering how to make the network calls faster between your inter-service calls? Well, then gRPC is what you are looking for. Let’s see what is gRPC and why gRPC would be the solution for faster inter-service communication and also let's see what are the pros and cons of using gRPC in your next distributed system. gRPC is a...

Read
Post Image

Vuetified .Net MVC

Photo by Clément Hélardot on Unsplash This is a follow up to progressively improving .net MVC with Vuejs to show how it can be done. The screen shot below shows how we can use a mix of razor templates and vuejs in the same page. Above you can see two divs where 2 numbers are being added. One part is being rendered simply in the Razor template where as the other involves passing the 2 values to vuejs which adds them by using an async...

Read
Post Image

Data science-led, game-changing solutions to disrupt OOH media

Out Of Home advertising has seen rapid growth in the UK. In 2019, OOH advertising revenue rose 7.6% from 2018 to £1.3bn. However, OOH, by and large, has operated as an offline channel until recently. OOH agencies have been traditionally managing and running campaigns manually. From campaign planning to media buying, pricing, placement and tracking, every step of the process is manual. The lack of industry standards add another layer of complexity by creating information silos that in turn make...

Read
Post Image

Progressive ASP .NET MVC

Photo by Xavi Cabrera on Unsplash ASP.NET MVC was a pragmatic choice back in the day when building websites. It allowed DI , adding in light JS frameworks and bundle them together. The DI allowed for testing most the code with ease except for the Razor view code. I was recently working on a .NET MVC project which had not aged well. It had fat Razor chain of views which would then have a whole bunch of JS frameworks which the developer needed to know....

Read
Post Image

Kafka Basics and Core concepts

Source: https://www.confluent.io/ Let’s start by answering the question “What is Kafka?”. Kafka is a Distributed Streaming Platform or a Distributed Commit Log Let’s try to understand those jargons. Kafka works as a cluster of one or more nodes that can live in different Datacenters, we can distribute data/ load across different nodes in the Kafka Cluster, and it is inherently scalable, available, and fault-tolerant. Kafka stores data as a stream of continuous records which can be processed in different methods. This...

Read