Category Archives: Technology

Interview Questions for a Technical Program Manager

Interview Questions For A Technical Program Manager (TPM)

Interview Questions for a Technical Program Manager  Ohh where do I start ? Over the last 6 months or more I have been in the process of being interviewed and I have also interviewed a several candidates (yes, yes the irony !). It has been a very interesting journey to say the least. Which is why I thought it would be a good idea to write this post on “Interview Questions for A Technical Program Manager”. I have learnt a lot on what and how one…

Read More »

Networking - Mario Gerard Seattle

Networking Protocols & TCP/IP

This post is to cover some of the most basic things you need to know about Networking Protocols & TCP/IP in your daily world. Let’s go over some of the very basic terms that a PGM needs to know of Protocol – Is the set of rules used for communication.Think about this as USPS vs FedEx vs UPS all are careers of message / packages.   HTTP – Has multiple stacks of rules that need to be followed for effective communication. Gateway – A gateway…

Read More »

Docker

Docker

Docker Containers What are docker containers ? Docker is a platform for developing, shipping, running applications using container virtualization technology. Docker aids in separating your application from your infrastructure and helps in treating your Infrastructure like the way you would treat any managed application. Docker aims to provide a lightweight way to create containers to manage and deploy your applications with isolation and security where you can get more out of your hardware. The docker platform consists of various platforms and tools : Docket Engine Docket…

Read More »

Mesh Network Mario Gerard

Mesh Networks The Next Big Thing ?

Mesh Networks The Next Big Thing ?  – Mesh Networks are best described as a redundant Network in which every user or node connected to the network aids in the distribution of data across the network. In other words you connect to the network via any form of message transfer protocol Bluetooth, LAN, TCP/IP and every message you send jumps from sender to node1, node2 .. up to N Nodes till it finally is delivered to the destination Node who would be the receiver. The reason…

Read More »

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 »

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 »

Capacity Planning

Capacity Planning

Capacity Planning for Backend Applications 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. 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, check in with…

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 »