CHANGEL
SOLID BASICS
CHANGEL

공지사항

  • DEV.CHANGEL PROFILE
  • SOLID BASIC (289)
    • 공부 STUDY (115)
      • JAVA (57)
      • C | C++ (34)
      • CS (11)
      • MySQL (2)
      • ALGORITHM (1)
      • HTML (2)
      • CSS (2)
      • JS (2)
      • CODING (0)
      • MINI PROJECT (3)
    • 스프링 SPRING (21)
      • [SPRING] 김영한 스프링 입문 (11)
      • [SPRING] 남궁성 스프링의 정석 (1)
      • [SPRING] 스프링 핵심원리 (9)
    • 전공 수업 CS (65)
      • Computer Network (13)
      • algorithms (21)
      • Computer Architecture (7)
      • Software Engineering (4)
      • Data Structure (2)
      • DataBase (1)
      • Digital Engineering (14)
      • Discrete Mathematics (3)
      • Introduction to programming (0)
      • Mobile Software (0)
      • Intelligence and Informatio.. (0)
    • 대외활동 (35)
      • 신한은행 대학생 홍보대사 34기 (8)
      • SKT T프렌즈 5기 (13)
      • SK DEVOTION YOUNG 1기 (9)
      • 성균관 대학교 공학교육혁신센터 수강 (3)
      • 수상 기록 (1)
    • 솝트 33기 안드로이드 (7)
      • [솝트 33기] 회고록 (0)
      • [솝트 33기] 안드로이드 왕초보 스터디 (2)
      • [솝트 33기] 코틀린 스터디 (0)
      • [솝트 33기] Git을 털어보자 깃털 스터디 (4)
    • 멋쟁이사자처럼 11기 (6)
      • 멋사 회고록 (4)
      • 백엔드 세션 (1)
      • 기획 세션 (1)
      • 연합해커톤 운영단 (기획팀) (0)
    • 백준 BAEKJOON (16)
    • 독서 BOOK (10)
    • 자격증 CERTIFICATE (1)
    • 준비 서류 및 회고록 MEMOIR (7)

블로그 메뉴

  • 홈
  • 태그
  • 방명록
  • 글쓰기

최근 댓글

인기 글

CHANGEL

SOLID BASICS

[소프트웨어 공학] 데브옵스(DevOps) | 데브옵스 엔지니어가 하는 일은?
전공 수업 CS/Software Engineering

[소프트웨어 공학] 데브옵스(DevOps) | 데브옵스 엔지니어가 하는 일은?

2023. 1. 7. 23:10

데브옵스(DevOps)


Development + Operations의 합성어

소프트웨어 개발자와 정보기술 전문가 간의 소통, 협업 및 통합을 강조하는 개발 환경이나 문화를 의미한다.

 

데브옵스 DevOps 엔지니어는 무슨 일을 할까?

소프트웨어를 만드는 조직에는 크게 프로그램을 구현하는 ’개발부서‘와 출시 후에 유지보수를 담당하는 ‘운영부서‘가 있다.

개발부서는 오류가 발생했을 때 버그를 수정하거나, 사용자들의 요구를 반영하여 빠르게 새로운 기능을 제공하고자 할 것이다.

하지만 운영부서는 이와 다르게 서비스의 안정성과 빠른 성능을 유지하는 데 집중한다.

 

따라서 개발부서는 잦은 업데이트를 통해 서비스를 개선하려고 한다면, 운영부서는 최대한 변화를 최소화하여 현재 잘 작동하고 있는 서비스의 안정성을 확보하는 데 집중한다.

만약, 두 부서가 원하는 것만 하려고 하고 서로 책임을 미룬다면 소프트웨어 출시 또는 업데이트가 늦어질 것이고, 더 빠른 서비스 개선을 원하는 사용자들을 만족시킬 수 없을 것이다.

 

개발과 운영을 결합하는 마법사, DevOps 엔지니어 

 

DevOps 엔지니어는 개발부터 운영까지 하나의 통합된 프로세스로 묶어내는 역할을 한다.

이 프로세스는 기존의 개발부서, 운영부서들이 수행했던 각각의 업무를 효율적으로 엮고 자동화하여 두 부서 모두의 목표를 달성시키는 역할을 한다.

 

세상에는 점점 더 많은 서비스가 빠르게 출시되고 있고, 서비스에 대한 사람들의 기대감과 요구는 높아지고 있다. 그런데도 서비스의 오류는 눈 깜짝할 사이에 해결되기를 바란다... 왜 DevOps Engineer가 2022년 미국에서 유망한 직업 4위로 뽑혔는지 이해가 되지 않는가?

(출처 : 미국 직장 및 상사 평가사이트 글래스도어)


데브옵스 DevOps 프로세스에는 어떤 것들이 있을까?

다음으로 DevOps 엔지니어가 수행하는 실제 작업에는 어떤 것들이 있는지 몇 가지만 알아보도록 하자.

자동화 

사람은 누구나 실수를 한다. 사람 대신 컴퓨터가 할 수 있는 일은 최대한 컴퓨터 스스로 할 수 있도록 구조화함으로써 휴먼에러를 줄인다.

롤백 🔙

에러가 발생하여 소프트웨어에 문제가 생겼을 때, 이것을 즉시 파악하여 이전에 문제가 없던 버전으로 되돌려 놓도록 프로세스를 구성한다.이전 버전으로 돌려놓는 것을 롤백이라고 한다.

모니터링 🔭

마지막으로 DevOps Engineer는 서비스 개발 단계부터 출시 후 사용자가 이용 중인 서비스를 모니터링하고, 변경 사항들을 모두 기록하여 다른 조직 구성원들에게 공유한다. 이러한 기록들은 서비스가 중단되었을 때 누구든지 이 문제를 진단하고 시스템을 복구하여 운영할 수 있도록 절차를 마련하는 데 사용된다. DevOps Engineer는 이렇게 축적된 기록을 바탕으로 추후 재사용할 프로세스를 발전시키며 효과적인 협업체계를 만들어 낸다.


DevOps는 어느 날 갑자기 새롭게 탄생한 직무, 직종이 아니다. DevOps Engineer는 기존에 존재하던 문제들을 해결하고 빠르게 대처하며 다음에는 이런 문제들을 또 만나지 않기 위한 방법을 찾아내는 전문가이다. 

​

 

데브옵스의 목적 : 소프트웨어 제품과 서비스를 빠른 시간에 개발 및 배포하는 것

 

결국, 소프트웨어 제품이나 서비스를 알맞은 시기에 출시하기 위해 개발과 운영이 상호 의존적으로 대응해야 한다는 의미로 많이 사용하고 있다.



데브옵스의 개념은 애자일 기법과 지속적 통합의 개념과도 관련이 있다.

  • #애자일 기법
  • 실질적인 코딩을 기반으로 일정한 주기에 따라 지속적으로 프로토타입을 형성하고, 필요한 요구사항을 파악하며 이에 따라 즉시 수정사항을 적용하여 결과적으로 하나의 큰 소프트웨어를 개발하는 적응형 개발 방법
  • #지속적 통합
  • 통합 작업을 초기부터 계속 수행해서 지속적으로 소프트웨어의 품질 제어를 적용하는 것

 

'전공 수업 CS > Software Engineering' 카테고리의 다른 글

[소프트웨어 공학] 클린코드 & 시큐어 코딩  (0) 2023.01.07
[소프트웨어 공학] 클린코드와 리팩토링  (0) 2023.01.07
[소프트웨어 공학] 애자일(Agile)  (0) 2023.01.07
    '전공 수업 CS/Software Engineering' 카테고리의 다른 글
    • [소프트웨어 공학] 클린코드 & 시큐어 코딩
    • [소프트웨어 공학] 클린코드와 리팩토링
    • [소프트웨어 공학] 애자일(Agile)
    CHANGEL
    CHANGEL
    NOT GIVING UP | SOLID BASICS

    티스토리툴바