Suppose I am en entrepreneur with little seed money for my Great Idea (TM) and I start a company initially planning to implement my Great Idea (TM) on my own and hire additional help on a basis dictated by the rate of company growth.

Frequently, answers on this site center around the idea that DevOps is not a role, but a new way of doing things with a new philosophy of operation that allows a team of roles to actually do DevOps. This prevents burnout and people from feeling like a lone wolf

As a fledgling and budding company, then, should I even bother to pursue DevOps as a philosophy, or is this only appropriate for a more mature operation capable of having a development team of sufficient size?

  • This is opinion based, so no real answer can be given - which is why I'm adding a comment. I believe that "Yes, you should bother". If you look at the building blocks of DevOps Philosophy and "Way of doing things", the ideas are sound and proven to work and give a competitive edge. If you start a startup company you should definitely not ignore these principles and try to incorporate them into how you are doing business. DevOps is NOT just for "bigger" players. In fact, most "bigger" players completely fail to adopt such a radically different culture, while you can build it from the foundation – Evgeny Nov 27 '17 at 23:21
  • @Evgeny - So how does the entrepreneur do that with a 1 man team based on the other answers I linked? – James Shewey Nov 27 '17 at 23:35
  • FWIW, having some DevOps expertise helps a great deal (I'm actually doing it myself). If not - a co-founder or even a hired hand with such expertise is highly recommended - it'll help keeping the costs down, which is crucial if/while bootstrapping. – Dan Cornilescu Nov 28 '17 at 3:59
up vote 10 down vote accepted

DevOps has three parts: Tooling/automation, Organizational, and Cultural.

You're basing your organizational structure and process' on your business' maturity. Which is smart. My experience in a startup and with a fortune 1000 company has afforded me the experience to denote that starting with DevOps is better for company growth. It's efficient and fits nicely with agile.

Tooling

Being your maturity is really young, you should buy your DevOps process as saas products to reduce time to market. Instead of Jenkins use circleCI or similar product. Instead of VM's and docker, use Heroku. Try and incorporate the toolset but do it in a manner that works for the size of your business. If deploying code manually takes 4 hours a week and automating it in 1 hour saves that. Do it.

Organizational

Also from an organizational standpoint, you will naturally start with all developers as the responsible party for operations/features even product development. Take a look at http://web.devopstopologies.com/ for organizational structures. Our startup started with type 2, and as we mature will move toward type 7.

Cultural

DevOps is simply teamwork. Work together and everything gets easier. It usually is a problem because leadership doesn't keep this in mind so as you start out, ensure that everyone is apart of the business. This is also reflected in agile.

So in short, yes pursue DevOps but do so at the level that meets your business maturity.

  • 1
    Thanks for the link to DevOps Topologies; good stuff there. – Stuart Ainsworth Dec 3 '17 at 12:57

The one (starting a small 1-2 person company and growing as money comes in) has nothing to do with the other (using a DevOps philosophy).

Even a 1-man business can be DevOps based. You can start implementing your Great Idea (tm) with a functioning fully containerized CI/CD pipeline, in fact there is no better time than at the beginning, when there is no cruft to take care of, yet, and before you hit a significant number of users. It's not going to take months of work; you can hack together a basic Jenkins/Docker pipeline in a few hours (if you know a lot already) or maybe days (but then the days will have been productively spent learning that stuff as you go).

Starting out with the CD part in a greenfield project is much easier than adding CD to an existing application which used manual deploys before.

You can start out with full test coverage at the start (there is no better time, for obvious reasons), including tools that verifies test coverage as part of the CI/CD.

You can easily start out with some small security measures, like checking your test suite for superfluous open ports or whatever.

You can, and should start out with cattle-not-pet right away (meaning IaC, IaaS, PaaS and all that good stuff, hosted on one of the pretty streamlined "big three" providers). Start small, scale a needed.

When you add more personel, they will start out right in that fruitful athmosphere, and hopefully many of their cheaper errors will immediately be caught by the CI/CD.

  • 1
    Add IaC to this and this one man company might create more value than 5 people without DevOps approach – Peter Nov 28 '17 at 0:28
  • I'd also suggest considering PaaS over IaaS, if possible - simpler, lower initial costs and ability to scale rapidly with very little changes (if any). – Dan Cornilescu Nov 28 '17 at 4:04

I think it's a feasible idea. You can set up as a service provider to companies that need services of DevOps but don't want to employ a staff for such services either because they can't afford to keep the person on a salary or because they're not into a business that permanently needs someone on hand. Such companies can engage your services or even put you on some form of retainers.

I have found developing a new venture can actually be made EASIER by adopting the DevOps philosophy and practices. After all, a small (1-2) person company does not have the resources (or luxury) to hire a developer, QA, operations and even customer service.

So almost by necessity the early players will have to cover multiple roles, development and operations (features and releases) can be mapped directly to a "DevOps" styled business.

That what I did with my previous micro-agency, we eventually became 2 full time (I mostly developer, my partner primarily ops backgrounds, but we started cross pollenating to hybrid ourselves :) and 3-4 regular contractors that would be called in as needed. Eventually we started also ongoing managing (operating) some projects for clients in addition to adding features.

Though we did not use the term "DevOps" (I don't think I knew it existed at the time), we were focused on improving feature to deployment timeframe, and making the client experience as painless as possible.

Also, a DevOps model may make it easier for people to take time off, since their role can be covered by somebody else!

I am just now starting a venture (providing DevOps services) to small business.

So in a nutshell, not only do I think it is possible, but I believe it is the BEST way to start!

Good Luck!

Yes because you can use advanced automation to create value and establish reusable foundations of your future bigger company. Depends, of course on how often you are going to update your digital products. But you will value the possibility to as much manual work as necessary on repetitive exercises.

Your Answer

 

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.