Kafka

All You Need to Know About Kafka !!

All You Need to Know About Kafka !! Kafka is a distributed, partitioned,high-throughput, low-latency platform. It provides a similar functionality of a messaging system, but with a unique design. Let us go over some basic messaging terminology related to Kafka – Kafka maintains feeds of messages in categories called topics. Processes that publish messages to a Kafka topic are called producers. We’ll call processes that subscribe to topics and process the feed of published messages are called consumers.. Kafka is run as a cluster comprised…

Read More »

SAFe Framework

Scaled Agile Framework – SAFe

Enterprise Agility  – Scaled Agile Framework – SAFe Scaled Agile Framework SAFe A proven, publicly available framework for applying Lean-Agile practices at enterprise scale and is the property of Scaled Agile, Inc. Every company big and small are following some variant of Agile. Organizations in the quest for iterating on smaller features, developing and delivering faster have pushed all their teams to take up some flavor of agile be it Scrum, Kanban, Scrumban, Extreme programming, etc.   Once the teams start working in an agile fashion delivering faster,…

Read More »

Application Resource Utilization

Application Resource Utilization

Application Resource Utilization More of a continuation from my previous post on Capacity Planning. The Application Resource Utilization primarily identifies the key factors that impact the response times and throughput of applications. As you tune your Application it is imperative to understand the primary factors that affect the performance of the API. In most cases this can be attributed to one of the three below described items. CPU Utilization Memory Utilization Disk I/O Utilization CPU Utilization is an integral part of the Application Resource utilization and is…

Read More »

Microsoft Store

Microsoft Store

The Microsoft Store Needs to Step up its Game ! I recently went to the Microsoft Store at University Village (Seattle) to buy myself a new laptop. Being a iPhone user over the last 4 years and frequenting the Apple store has sets some expectations on what an in store experience should be. The three times I went to the Microsoft store the experience was less than satisfactory.  Sales Representatives Knowledge The representatives in the store though were trying to be as helpful as they could, They were…

Read More »

IT Capacity Planning

IT Capacity Planning

IT Capacity Planning for Backend Applications IT capacity planning for this post primarily focuses on estimating, infrastructure related tasks that need to be considered to make sure you have enough resources to take on the projected/future traffic and computational demands for new features. A lot of sizing and capacity planning is a semi-scientific approach. IT Capacity Planning The Three Cases Feature Based – When releasing a new feature in an existing application. Seasonal – When you are planning for a particular event. Like black friday,…

Read More »

Technical Program Manager (TPM) Salary Analysis Seattle, 2017

Salary Analysis of Senior Program Managers in Seattle

Salary Analysis of Senior Program Managers in Seattle UPDATED : New post on Salaries for TPMs 2017  Salaries Having covered Roles and responsibilities of project managers, Program managers in my previous post. In this post I am taking a deeper look into compensation for these roles here in Seattle. How much does a Program Manager make ? What should your Salary as a Program Manager be and what are the subtle differences between a Program Manager, Senior Program Manager, Technical Program Manager, Lead Program Manager and a…

Read More »

Senior Program Manager

Demystifying The Roles & Responsibilities of Program Managers

Demystifying The Roles & Responsibilities Of Program Managers This post is about the various roles and responsibilities that are most commonly used in the Project Management world and how they are similar and what the differences are. This post is also to set the ground rules for the following post on the detailed analysis of Salaries for Program Managers in Seattle. BSA (Business Systems Analyst) – This was predominant before the whole Scrum revolution took off. Now most of these roles are either a Program…

Read More »

Microservices

Microservices

Microservices is the new buzz word. It refers to smaller and more manageable services that serves a specific use case. They are the exact opposite of a mololytictic application where you have a self contained application that would carry out any and all requests that come to it. They are also most often built by smaller team that own, provision the necessary environments, design, develop, test and deploy them. This way the team has full responsibility and takes onus in case it is in a bad state…

Read More »

Graph databases

Graph Database

  What is a Graph Database ? Graph databases address one of the biggest use cases, they leverage complex dynamic relationships between data points to generate insightful correlations. Graph Databases A graph database  consists of a several nodes (vertices) with various types of relationships (edges) connecting these nodes. Think of a graph database as a simple white board drawing of all your facebook friends where each friend is a node and relationships (edges) are location, actual relationship. Image from NOSQL Distilled – A Brief Guide…

Read More »

CONTINUOUS INTEGRATION

Continuous Integration – True agility for software development

Continuous delivery is the implementation of the developing, compiling, deploying, testing, and releasing software in an automated fashion with an aim to compress the time to release. Continuous delivery or continuous integration aims to have a quick and  automated feedback to evaluate and understand the production readiness of a release candidate. This philosophy is embraced by Devops which defined as the software development method that emphasises on communication and tight collaboration between all the parties involved in the software development lifecycle. As Agile gains momentum…

Read More »

What is NoSQL?

What is NoSQL?

What is NoSQL? Over the last decade there has been an explosion of users we probably had 1000 users per day hitting high traffic websites and today we have millions of users. Millions of users mean that applications need to handle the load of multiple users accessing the same data performing CRUD operations. This means modern web applications  are collecting, processing and accessing multiple times more data than before. Also with apps going viral and sudden uptakes (black friday) in users accessing your app you…

Read More »

Certifications

Certifications – To do or not to do

The sheer number of certification one can do is infinite. Companies like Microsoft and Oracle alone have more than you could possibly count. My first hand experience I could tell you both of these companies do not hold any value to these certifications when you interview with them. Which means to say having a certification does not offer more than a icing on the cake.At some point I think that certifications started out as a business unit to get individuals trained and certified to promote…

Read More »