Understanding two key server performance metrics

Photo by Ibrahim Boran on Unsplash

Prometheus and Grafana are becoming de-facto standards for monitoring linux servers. You will find countless guides of how to get Prometheus with Grafana running under 10 minutes. This includes beautiful, interactive dashboards out-of-the-box.

But what about monitoring Windows servers? The how-to guide space for setting up Windows with Prometheus and Grafana is much more empty. The good news is that you can still monitor your windows servers with Prometheus and Grafana. The bad news is that the variety of available metrics and Grafana dashboards out of the box is quite limited.

But don’t despair. In this how-to guide, I will…

Internal platforms as a means to maximize flow

Photo by Dean Brierley on Unsplash

Any new technology adoption impacts cognitive load of development teams. Cognitive load could be explained as the amount of mental energy required to perform a task. Too much of cognitive load can create overload for developers. It then causes slower flow of change and delivery bottlenecks. It can also increase likelihood of human errors, add frustration and stress or worse -induce burnout.

How do new technologies come to lives of developers an how does it impact their cognitive load? And what can we do practically to better manage unwanted effects of new technology to developer teams?

In this post I…

Innovation by committee, business cases, roadmaps and projects — four horsemen of failed innovation?

Photo by Hello I'm Nik 🎞 on Unsplash

This blog post is a summary of a chapter from “Inspired” by Marty Cagan. I wrote this summary as reflection exercise on a topic which is critical to all Enterprises — challenges of innovation in large companies.

Innovation and Enterprise

Large enterprises leverage their services through the value and the brand created many years earlier. It is a natural thing to do. Groups of stakeholders focus on protecting what the company has created in the past. …

What is internal platform?

The rise of DevOps movement popularized many new ideas such as Continuous Integration and Continuous Deployment, Observability, Microservices, etc. New supporting technologies like Docker and Kubernetes emerged and enabled wide adoption of those ideas.

New ways of working need new tools, technologies and environments. Tools to enable teams develop digital products faster and run them more efficiently.

Building blocks of internal platform

These tools form internal platforms which engineering teams rely on. The schematics of an internal platform could look like this:

The diagram shows how mutliple tools integrated together form an internal platform. Different companies may use different tools as building blocks.

To better…

In my previous post “Legacy Application Costs” I listed common costs and risks of legacy applications. In this post I will give an overview of different ways of modernizing those applications.

Every now and then engineering teams face situation when they need to decide what to do with a legacy application. Questions they often ask themselves are:

  • What if we keep the application as it is?
  • How should we modernize the application? Should we refactor it? Should we rewrite it from scratch?
  • What is the total application cost of ownership now? Are we able to estimate it? …

Introduction

Applications based on legacy code exist in most mid-to-large companies. At the company I work we have them too. It is not that difficult to identify those applications. Development teams know them well as they usually require a lot of attention. Yet a deeper look reveals the reasons why we consider those application legacy are different. And they pose different downsides as well as risks.

My motivation for this post is to look at common attributes of legacy applications. What are the costs and risks of not addressing the legacy aspect of those applications?

What is legacy code?

There is a plethora of definitions…

What are OKRs and why should we care?

OKRs stand for “Objectives, Key Results” and it is a goal setting system for organizations. OKRs is one of the most popular systems in IT world right now. Some other systems which were popular in the past and still used now to set goals are KPIs, Management by Objectives, SMART goals.

The purpose of OKRs is to connect the goals of individuals, teams and the whole organization to measurable results while helping all the members of the organization to move in the same direction.

In my opinion three things make OKRs different from other popular systems.

OKRs emphasize importance of…

Introduction

One of the key differences between our professional lives now and 20 years ago is a concept of life-long learning. Importance of continuing learning all the time seem to be a prerequisite many more professions now than in the 20th century.

To be effective in this learning journey we need to understand the stages of acquiring skills. What makes a difference between novice and master? Is this only practical knowledge? Or do they see problems and tasks differently? Why a master doing the task looks so fluent whereas a novice is under great stress with exact same task?

In this…

Introduction

Risk management is important topic when one considers investments into IT projects. In most cases most of attention put to project delivery risks whereas there are two other major risks from the perspective of business investment.

In this article I will give a brief overview of what are expressions of business value. I will also outline what are three major risks and give a more detailed description to one of them.

Expressions of business value

Chris Matts has identified 4 expressions of business value from business investor view why he could invest into IT project:

  • Increase revenue
  • Decrease costs
  • Protect revenue
  • Avoid costs

If…

Introduction

Today observability is a popular topic for discussions in some technology circles. It is often viewed as a glorified monitoring of applications which is achieved by using such tools as ELK. It is, however not a case. Observability is a property of the system (and not a process) which is important for monitoring and diagnostics.

In this article I will provide a definition of observability (shamelessly stolen from VividCortex). I will also discuss how observability of a system can be achieved using two simple methods.

How do we observe systems

Observability is a property of a system which describes how well can we determine what…

Vytas Prazarkevicius

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store