As you're hiring people to help piece together your organization's unique DevOps puzzle, where do you put them? How do you structure your teams to facilitate a DevOps-centric approach?
Various philosophical traditions talk about harmonizing the Five Elements: air, earth, fire, water and space. Leveraging the cloud involves balancing three elements: abstraction, insight and control.
Recently I got a call from a recruiter who was having trouble finding applicants for a job posting that included the title 'DevOps Engineer.' So I asked him to send me the job description. When I saw it, my jaw dropped. The copy said nothing about what the person in this position would be expected to do or accomplish. It also said nothing about what challenges the company faced that necessitated them hiring someone.
I have a confession to make. In the past several years I've implemented 'DevOps' automation tools for a number of startup companies without having a clue what their business was about. That's more than a little scary when you think about it.
Should we use a single GitHub repository for Chef cookbooks? Or one GitHub repository per cookbook? Why choose one or the other approach in a give situation? What are the potential benefits and tradeoffs? Does anybody really know? Are we over-thinking this issue? Maybe we all should take a deep breath, tear our hair out, throw Chef under the bus and just write fu#king shell scripts!