DevOps를 방해하는 자동화 과제

광고 DevOps를 방해하는 자동화 과제
개발자와 기업이 어떻게 발전하고 성공할 수 있는지

개발자는 버그와 오류를 수정하는 데 많은 시간을 투자합니다. 코드에는 항상 결함이 있기 때문에 이는 중요합니다. 하지만 이러한 작업에 필요한 시간과 노력은 개발자와 기업 모두에게 종종 문제를 야기합니다. DevOps 개발자는 코딩 및 배포부터 보존 및 업데이트에 이르기까지 소프트웨어 개발 라이프사이클 전반에 걸쳐 요구 사항의 균형을 맞추기 위해 프로세스, 도구 및 방법론을 구현합니다 상세페이지제작.

버그를 조사하고 수정하며 코드 오류를 처리하는 데 너무 많은 시간을 낭비하면 개발자 생산성과 만족도가 저하되고 번아웃으로 이어질 수 있습니다. 『소프트웨어 엔지니어링 생산성 재구상(Reimagining Productivity in Software Engineering)』에서는 개발자의 좌절의 주요 원인은 시간 압박과 문제 해결의 고착이라고 주장합니다. 저자의 연구에 따르면, 불만은 개발자의 업무 흐름을 방해하고 프로세스에 부정적인 영향을 미칩니다. 이 책은 직원들이 불만을 느끼면 일시적 또는 영구적으로 업무에서 물러날 수 있다고 지적합니다.

버그와 버그 수정은 개발자에게 부담을 주고, 고객은 결국 제품 개선 속도가 느려집니다. 또한, 기업이 버그를 수정하는 데 시간이 오래 걸릴수록 이러한 문제가 고객에게 미치는 영향도 커집니다.

이러한 문제의 원인 중 하나는 대부분의 DevOps 도구가 인프라 중심적이라는 점입니다. 이는 방정식의 절반에 불과합니다. 나머지 절반은 코드입니다. 개발자는 코드를 생성하고 수정하기 위한 도구가 필요합니다. 여기에는 개발자의 부담을 덜어주고 프로세스 속도를 높여주는 자동화가 포함되어야 합니다.

또 다른 이유는 기업과 개발자가 코드에서 문제를 해결하는 데 걸리는 시간을 줄이는 데 더 집중해야 하며, 비밀번호 때문에 더 빠른 반복 작업과 더 잦은 릴리스를 위한 평균 해결 시간(MTTR)을 단축하는 것의 중요성을 아직 고려하지 않았기 때문입니다.

작업에 적합한 도구 사용
기존 모니터링 및 감시 도구는 귀사의 인프라에 적합합니다. 예를 들어, 디스크 공간이 부족하거나 네트워크가 잘못 구성되었을 때 사용자에게 알림을 제공하지만, 코드에는 더 적합할 수 있습니다.

인프라 도구는 서비스, 호스트, 메트릭, 트렌드와 같은 개념을 중심으로 설계되었습니다. 가상 머신으로 추상화된 물리적 하드웨어와 같은 인프라에 중점을 둡니다.

개발자가 작성하고 제어하는 ​​코드는 이러한 환경 위에 구축됩니다. 코드 개발 도구는 다양한 환경에서 코드가 어떻게 동작하는지, 그리고 개발자가 의도한 대로 작동하는지 더 잘 이해하는 데 중점을 둡니다. 인프라 도구는 코드가 정상적으로 작동하며, 문제가 발생하면 인프라에 문제가 있다고 가정하지만, 실제로는 그렇지 않은 경우가 많습니다.

과거에는 기업들이 소프트웨어를 1년에 한 번만 출시할 수 있었기 때문에 코드 테스트에 훨씬 더 많은 시간과 자원을 투자할 수 있었기 때문에 이러한 격차는 더욱 심화되었습니다. 하지만 이제 고객들은 소프트웨어의 빠른 개선을 요구하기 때문에 개발팀은 더 자주 소프트웨어를 출시합니다.

즉, 코드 테스트를 미세 조정하는 데 소요되는 시간은 줄어들고 실제 운영에서는 문제가 더 많아진다는 뜻입니다.

개발자들이 이러한 문제를 이해하고 해결할 수 있는 적절한 도구를 갖추고 있다면 매우 좋습니다. 하지만 개발자에게는 작업에 적합한 도구가 필요한 반면, 인프라 도구에는 적합하지 않은 도구가 필요합니다. 마치 기분 좋은 집 프로젝트를 진행하는 것과 같습니다.