different sides of devops in recrutment and engineering

The question is what is devops? How do you recruit a devops engineer. The short answer is you don’t. a devops engineer does not exist. The thing about recruiting a so called devops engineer is all a bit undefined and often miss understood and is often used by head hunters and recruiters to find software engineers/ops engineers.

»
Author's profile picture Alexander Brandstedt on devops, software-engineering, and platform-engineering

simple prometheus exporter in python

writing a simple prometheus exporter to collect metrics from a external system that needs monitoring. I will use the python official prometheus_client package for python and falcon to serve the exporter.

»
Author's profile picture Alexander Brandstedt on prometheus, exporter, and python

lessons learned by running docker on mesos and aurora in production

Short about how we run docker. The way we are running docker using aurora to scedule on mesos currently both on aws and on on premise. Every service have a aurora job defined. When a job is sceduled the service allocates resources from mesos and starts a job. That job is a set of one or multiple docker containers. This is all good and works ok.

»
Author's profile picture Alexander Brandstedt on docker, mesos, and aurora

killing the traditional quality assurance way of testing

After years in testing roles it’s obvious that the traditional way of doing testing will no longer hold up. What i mena with the traditional way of testing is. Quality assurance, you have separate development and testing teams i.e QA teams. When the development team is done they deliver to QA and they do there work. QA follows a long and usually static test plan and process, your not suppose to step outside the boundaries of the test plan or the process. This way of working is not only slow it disconnects the guys working with testing and development.

»
Author's profile picture Alexander Brandstedt on testing and strategies

Docker alpine smaller image footprint

Working with docker images to minimise the footprint i.e the size if a image. There is a few things that you can do to get smaller images. I will show some examples for a small go and python3 service built in a Debian and alpine linux based image to compare the result and the footprint that a image.

»
Author's profile picture Alexander Brandstedt on docker, python, python3, alpine, linux, golang, and go

Fabric dynamic hosts tasks

Using fabric with dynamic hosts. In the fabric documentation most of it is using examples and is assuming that you you have a static set of hosts. That is no longer the case when we are working with cloud and a dynamic amout of hosts. The way the fabric want’s you to run tasks is to use the fabric.api.env function to set the hosts you have. If you now want to do this on the fly you have one option a function called execute avalible in fabric.api that takes a key hosts this key will be used to tell fabric to run on this hosts as if you had set env.hosts .

»
Author's profile picture Alexander Brandstedt on python, fabric, fab, dynamic, and hosts

why do we do need unit tests

You might be thinking well unit tests is kind of a obvious thing that you have when you are writhing code. If you do you are wrong. Not all developers want and can write unit tests. This is kind of interesting for me.

»
Author's profile picture Alexander Brandstedt on testing and unittest

python click bash zsh auto complete same files

Sharing the same auto completion for zsh and bash. In zsh there is somthing called bashcompinit that can be used to share the same completion for bash and zsh. here is a small example project that will fix completion for you when you are not using a nested command structure. see next post about nested completion for bash/zsh

»
Author's profile picture Alexander Brandstedt on python, bash, and zsh

python click bash zsh auto complete same files nested command groups

Sharing the same auto completion for zsh and bash. In zsh there is somthing called bashcompinit that can be used to share the same completion for bash and zsh. here is a small example project that will fix completion with command groups and nested commands.

»
Author's profile picture Alexander Brandstedt on python, bash, zsh, and nested

python protobuf over http

The point of this is a smal example on how you could use protobuf to send data over http. In this example i will be using Python and the packet falcon for the server. A command line tool as the client. The example will just be a simple ping/pong containing a message, channel, and PING or PONG sent to the server. The server will respond with the same message and channel and a PONG.

»
Author's profile picture Alexander Brandstedt on protobuf, python, and http