What are Common Tech Stacks used in Start-Ups for Devops?
Tags: devops, webdev, tutorial, startup
Published: 2022-03-07 11:49:09

Everyone in the IT industry is benefiting from DevOps. So why should startups not join the race? The answer is simple - because startups don’t have the proper idea of “where to begin”? When my company started implementing DevOps, we also faced issues in figuring out what to do next. For example - AWS has a plethora of different services they offer. However, most startups end up using only a handful of different services. 

Organizations getting familiar with DevOps struggle to figure out the perfect tech stack for DevOps implementation. This article is my attempt to address this major concern so that all aspiring startups don’t need to wander off into unknown territory and learn from hardships. But first, let’s start by understanding why you need to adopt DevOps?

##Benefits of DevOps

Using DevOps within your organization gives you [three different kinds of benefits](https://www.simform.com/blog/benefits-of-devops/) - Technical, Business, and Operational. 

- DevOps' technical benefits deal with effective collaboration between technical teams and QA teams for effective results. It achieves this by leveraging process automation, agile development, and CI/CD implementation.

- The operational benefits of DevOps deal with bringing stability and allow you to have your operations in sync with your organization’s goals. It is achieved by harnessing operational stability, operational synchronization, and error detection. 

- Business benefits of DevOps deal with understanding core business analytics. Understanding it can assist you in determining the modifications that are required to increase your company's agility and capability. By making the best use of such analytical data, DevOps enables rapid adaptation to the changing market conditions and improves business performance.

To harness the benefits of DevOps, you need to know which tech stack you need to be well-versed with. Otherwise, if things go haywire, your attempt to try DevOps will turn into one of the [horror stories of DevOps](https://dev.to/hirendhaduk_/devops-horror-stories-learn-why-devops-implementation-planning-is-necessary-3e8e).


##DevOps #101

For a complete beginner doing DevOps at a startup, there are a few fundamentals that one needs to learn. 

- **Know a Cloud**. I am not being very specific over here. But make sure you are able to justify your pick. Once done, know its major services and offerings and make yourself comfortable with its basic services. Virtualization and networking are the bare minima you need to know. 

- **Know your OS**. You will probably be using Linux server OS. Pick a choice of OS. My recommendation will be with Ubuntu. As Centos is getting outdated, you can skip that one. Once you decide on your OS, get familiar with it. Know how to search, install and configure packages.

- **Familiarize with RDMS**. Startups usually don’t have the budget for a dedicated DBA; therefore, it'll be up to you to get things done so the dev team can keep moving forward.

- Learn how to use an **Infrastructure as Code (IaC) tool**. Terraform, and Terragrunt is my professional recommendations. Other tools are available, although they are usually cloud-specific (e.g. CloudFormation, Serverless Framework, etc.). Terraform can integrate with anything that has an API and will continue to work for you even if you transfer to a different organization with another cloud and vendors.

- You will most of the time be fiddling with DNS or debugging DNS issues. So, make **learning about DNS** one of the prime things to do. 

- Last but not least, **rely on a documentation tool**. Make a note of it in your procedures. You'll quickly become overwhelmed by the sheer amount of information required to comprehend your surroundings. And you'll forget everything, especially when it happens six months later. Make sure your teammates and future replacements have all the knowledge they need to debug and fix the systems you're currently building.

##Conclusion

DevOps isn’t any rocket science as it seems. It’s just a set of processes and tools that will assist you in rapid deployment. If you have any questions regarding the same, I will be happy to discuss them in the comments below.