Posts

Situational Leadership Strategy

Image
Situational Leadership Theory is a model created by Paul Hersey and Ken Blanchard in 1969. It describes a leadership style that is adapted to a direct report depending on the unique individual or situation, with no one style being better than another. Hersey and Blanchard grouped leadership styles into four behaviors: Telling: The report lacks the skills required to do the job, but is willing to work at it. Selling: The report is capable of performing, but is unwilling to do the task. Participating: The report is experienced in performing the task, but not confident. Delegating: The report is experienced, confident, and takes ownership of the task. Depending on the individual and the task at hand, it’s necessary to adapt your leadership approach in order to be the most effective leader possible. I have built on top of this model as I adapt my leadership style based on specific circumstances. The following factors inform my approach to managing an individual in a specific...

GitOps with GitLab: Connect with a Kubernetes cluster

Image
It is possible to use GitLab as a best-in-class GitOps tool, and this blog post series is going to show you how. This is the third post in a series of easy-to-follow tutorials; posts focus on different user problems including provisioning, managing a base infrastructure, and deploying various 3rd party or custom applications on top of them. Read the first post and the second post . This GitOps with GitLab post shows how to connect a Kubernetes cluster with GitLab for pull and push based deployments and easy security integrations. Prerequisites A Kubernetes cluster that you can access and can create new resources, including Role and RoleBinding in it. You will need kubectl and your local environment configured to access the beforementioned cluster. (Optional, recommended) Terraform and a Terraform project set up as shown in the previous article to retrieve an agent registration token from GitLab. (Optional, recommended) kpt and kustomize to install the Agent into your clu...

Deep dive: the tech stack behind Spamcheck

Image
We recently wrote about how our Security Automation team designed, tested and deployed a new anti-spam engine called Spamcheck . In this blog, we’d like to offer a deeper dive into our toolstack, the contributing factors surrounding some of those technical choices, and a look at the stack’s performance, including some lessons learned so far. Building with flexibility and growth in mind As mentioned in our previous blog on Spamcheck, we conceived and built the service to rely on Golang and gRPC from the beginning, and made this choice for 3 main reasons: Golang is one of the main languages (along with Ruby) that GitLab currently uses for its systems and services. We suspected from early interest and success that we’d need to eventually ship Spamcheck with Omnibus, so we needed to ensure minimal friction in build processes and shipment. Aligning Spamcheck’s stack with current GitLab engineering policies guaranteed we’d be flexible and efficient. Readers might wonder why Python wasn’...

The top skills you need to get your DevOps dream job or a higher salary

Image
If you’re looking to transform your job, your salary and your ability to get a job with your dream company, there are some skills you need to add to your toolkit. DevOps is a rapidly changing field. Automation is booming. There’s an increasing focus on artificial intelligence (AI) and machine learning (ML), along with moving security to the left. And there’s a call to master an ever-growing list of programming languages. Face it, DevOps professionals need to be in a constant learning mode . If you’re picking up new expertise, you’re likely going to find yourself in a coveted position since companies are struggling to fill jobs with DevOps professionals who have the latest skills.  So what technologies should you consider adding to your toolbelt? Of course, you need to take stock of your own skill set, experiences and certifications, and compare all of that to what your company, or your dream company, might need. Here’s a helpful list of considerations. Expand your programming ...

Four new tools for your Visual Studio Code and GitLab tool belt

Image
In our previous post , we talked about merge request (MR) Reviews. We explained how the GitLab Workflow extension helps you review MRs without leaving VS Code. Since releasing and polishing the MR reviews, we've been working on improvements to the extension. In this post, we will show you how the latest features fit into your workflow. Do you have a lot to say? Use a snippet patch! On GitLab's web UI there's the "suggestions" feature. It's handy for suggesting small changes in the MR review. The VS Code platform doesn't let us recreate the same experience, but the extension offers an alternative: Snippet patches. Snippet patches are code changes (git patches) of arbitrary size shared as GitLab snippets. Because they don't have a size limit, they are perfect for suggesting changes to multiple files during the MR review. The extension has two commands, Create snippet patch and Apply snippet patch . These commands use git diff and git apply , respec...

The top skills you need to get your DevOps dream job or a higher salary

Image
If you’re looking to transform your job, your salary and your ability to get a job with your dream company, there are some skills you need to add to your toolkit. DevOps is a rapidly changing field. Automation is booming. There’s an increasing focus on artificial intelligence (AI) and machine learning (ML), along with moving security to the left. And there’s a call to master an ever-growing list of programming languages. Face it, DevOps professionals need to be in a constant learning mode . If you’re picking up new expertise, you’re likely going to find yourself in a coveted position since companies are struggling to fill jobs with DevOps professionals who have the latest skills.  So what technologies should you consider adding to your toolbelt? Of course, you need to take stock of your own skill set, experiences and certifications, and compare all of that to what your company, or your dream company, might need. Here’s a helpful list of considerations. Expand your programming ...

How to install and use the GitLab Kubernetes Operator

Image
The GitLab Kubernetes Operator was released on October 12, 2021. What is the GitLab Kubernetes Operator? The GitLab Operator allows you to install and run an instance of GitLab in a vanilla Kubernetes or OpenShift cluster. Kubernetes operators increase the reliability and availability of your applications by automating Day 2 operations such as upgrading components, management of data integrity, application reconfiguration, automatic recovery from a failure, and autoscaling. Installing the GitLab Kubernetes Operator on an OpenShift Container Platform cluster In this short post, we show you how to install and run the GitLab Operator to create a GitLab instance on an OpenShift Container Platform cluster, which we have already preinstalled: The OpenShift Container Platform console Inspecting the running pods of the OpenShift cluster, we see that Prometheus is already being used as the metrics server, which is a prerequisite for the installation of the GitLab Operator: Prometheus u...