Narzędzia i praktyki DevOps

DevOps to w miarę nowy termin, użyty po raz pierwszy w Belgii w 2009 roku na pierwszej konferencji DevOps Days. Pierwotna definicja, czyli zespolenie rozwoju (development) i eksploatacji (operations) oraz zapewnienia jakości (quality assurance), od tamtego czasu uległa ewolucji. Początkowo skupiano się tylko na narzędziach, komunikacji i automatyzacji procesów tak, żeby ułatwić współpracę zespołów, które od dekad pracowały jako oddzielne jednostki. Dzisiaj co raz częściej mówi się o kulturze DevOps i przebudowywaniu całych firm tak, żeby pracowały i dostarczały swoje produkty w duchu DevOpsowych praktyk (tzw. best practisów). Długo można by pisać o historii i różnych definicjach DevOps ale w TTPSC skupiliśmy się na realnych wartościach i ulepszeniach, które uzyskaliśmy korzystając z devopsowych metodologii.

Kultura i metodologia DevOps

Podstawą DevOps jest stworzenie poprawnego procesu na naszym projekcie, a następnie zautomatyzowanie go w jak największym stopniu. Hasło „Automate yourself from a job” jest powtarzane niczym mantra. Nasz zespół DevOps korzystając ze swojego wieloletniego doświadczenia w realizacji międzynarodowych projektów zapewnia najlepszą jakość i znacząco skraca czas dostarczenia naszego produkt. Dzięki automatyzacji i współpracy z innymi zespołami projektowymi, eliminujemy liczbę błędów i znacznie szybciej reagujemy na błędy lub awarię serwerów. Dodatkowym atutem automatyzacji wdrożeń oraz poprawnej komunikacji pomiędzy zespołami jest skrócony czas informacji zwrotnej wysyłanej do programistów, dzięki czemu łatwiej jest im reagować i naprawiać błędy. Jeżeli Twoi klienci nie są zadowoleni z tempa dostarczanych rozwiązań lub narzekają na ich jakość i ilość błędów po wdrożeniu, to najprawdopodobniej DevOps jest tym czego szukasz.

Co zyskujemy wprowadzając kulturę i metodologię DevOps na projekcie?

  • Ulepszona komunikacja i kooperacja pomiędzy zespołami projektowymi.
  • Wprowadzanie i automatyzacja procesów wytwarzania oprogramowania.
  • Większa jakość dostarczonego rozwiązania.
  • Znacznie skrócenie czasu pojawienia się rozwiązania na rynku.
  • Szybsza reakcja na błędy zgłaszane przez klienta.
  • Wsparcie dla zwinnych metodyk typu Agile
  • Automatyzacja testów

 

Na funkcjonalności DevOps składają się:

  • Continuous Integration oraz Continuous Delivery (Jenkins, GoCD)

  • Infrastructure as a Code (AWS Cloud Formation, Terraform)

  • Konteneryzacja i orchiestracja – zarządzanie kontenerami (Docker, AWS ECS)
  • IaaS, SaaS, PaaS
  • Configuration Management (Chef, Puppet, SaltStack, DC/OS, Ansible)
  • Monitoring i automatyzacja
  • Rozwiązania Serverless (AWS Lambda, Azure Functions, Google Functions)

Kontakt