Archive for General

What is DevOps?

DevOps, a portmanteau of ‘development’ and ‘operations’, is a concept that refers to anything empowering organizations to deliver high-quality products to productions while maintaining flexibility within a reliable system.

Traditionally, a DevOps engineer role is seen as a blend of a Systems Administrator (Ops) and Software Developer (Dev) role. A DevOps engineer is often involved in all parts of the software / infrastructure lifecycle – from planning, to coding, to testing, to deployment, to operations.

Although DevOps is often thought of as only a movement within IT, DevOps can be applied in organizations who produce hardware, software, and hardware / software hybrids.

I think of DevOps as a process of collaboration across the traditional IT roles (Development, Operations, Quality Assurance, and Security) to deliver functional solutions to help entire systems. Common examples of this would be infrastructure-as-code, monitoring systems, and automated testing processes. The DevOps movement arose from software companies of huge scale, but is common in very small organizations as well.

Enabling & Improving World-Class Systems

World-class systems successfully implement DevOps, whether an organization calls it that or something else. A world-class system must meet three requirements:

  1. Highly scalable
    A world-class system must be prepared to scale up to billions of users, and have an infrastructure that can be adjusted to support that. A world-class system doesn’t necessarily need to have billions of users, but they need prepared to scale that large.
  2. Provide superior value
    Every system delivers a great idea that solves some kind of problem. A world-class system is delivering a  great product to the end user. The product may be tangible (a package from Amazon arriving at a doorstep), or intangible (a great article from Wikipedia that helps someone learn something new).

  3. Flawless experience of the product for users / customers
    In order to reach a certain level of scalability, a system must keep its users. Every experience a user/customer has with a product must satisfy them so they come back again. This does not necessarily mean a beautiful user interface, but an experience where users keep using your product. Reddit and Pinterest look very different, but maintain a great deal of users.

    No one loves to use a website where they feel frustrated by constant errors or cannot update their account information because services are down, again.  Very few users / customers would stay loyal to a company that charges them incorrectly for services or products, or has a leak in their personal information.

Why DevOps?

A DevOps culture allows a system to change quickly, stay reliable, and still deliver high quality to the end user. Successful implementation of DevOps saves organizations time, money, and morale while empowering them to focus on the things that matter most to them. At Ultralinq, we are seeking to create a DevOps culture on our engineering team whilst moving towards greater efficiency, collaboration, and quality.

Introduction

I joined UltraLinq as the CTO about a month ago. It’s been an interesting time.  I’ve never worked in an environment with an FDA-regulation product before.  I’ve been learning as I go, but there’s a lot more to figure out.  Fortunately, I have a lot of help.

We have a great product.  It can become even better.  Over the next year we will work on new ways of approaching architecture, how we scale functionality, and how we match a regulated product development process to our ability and need to innovate and deploy.

To do all this, we’re hiring.  Surprise!  If you think you can help, take a look at our open positions on our jobs page.  We’re adding new positions so check back once in a while if you don’t see what you want to do.

I hope you will be hearing from the entire team on this blog.  They know a lot and they’ve done a lot, so they should have good stuff to share.