프론트엔드(Front-End) :
- 화면 구성, UI 개발, View 구성
백엔드(Back-End) :
- PHP, Java, Python, JavaScript 등으로 데이터 저장 및 가공하여 Business Logic 개발
서버 프로그래머(Server Programmer) :
- C, C++, Go, Java 등으로 리눅스, window 시스템 API 호출하여 File을 활용
- Socket을 열어 네트워크 통신을 하는 프로그램 개발
서버 엔지니어(Server Engineer) :
- 서버 상태 점검 및 CPU, Memory 사용량 증가에 따른 장애 발생을 막고자 Process 관리
- IDC에 서버 입고 시키고, 스위치나 라우터를 통해 Server를 연결하여, 안정감있게 Server를 관리
DB 관리자(DBA - DataBase Administration):
- 데이터베이스 시스템 생성, 설계, 유지관리, 백업, 쿼리, 조정, 사용자 권한 할당 및 보안 담당
- Server 하드웨어 및 운영체제로 구성된 플랫폼에서 DB가 실행되므로 적어도 둘 중 하나는 잘 아는 자
ex) Unix 서버에서 오라클 DB 설치하려면 RAID 구성의 복잡성 및 설치할 때 쓰는 Unix 명령 및 task 숙지
- DBA 종류 :
(1) 관리 DBA :
- Server 와 DB를 유지 관리 및 지속 실행
- 백업, 보안, 패치, 복제 와 친근한 직군
- DB 최적화 같은건 안 함
(2) 개발 DBA :
- Business 요구 사항에 따른 SQL 쿼리, 저장 Procedure 등 빌드 작업
- DB만 만드는 개발자
(3) Data Architect :
- 스키마 설계, Table 인덱스, 데이터 구조 및 관계 구축
(4) 데이터웨어 하우스 DBA :
- 여러 source 데이터를 데이터웨어 하우스에 병합하는 직군
- 데이터웨어 하우스 설계 및 데이터 정리-표준화 작업
네트워크 엔지니어(N/E):
- 백본 구성 및 스위치 라우터 등 네트워크 장비로 토폴로지 구성
- 네트워크 단절에 대비해 이중화 구성
DevOps 엔지니어 :
- 프로세스, tool, 방법론 등을 도입하여 서비스 배포, 유지관리, 업데이트 같은 소프트웨어 개발 LifeCycle 전체의 요구 사항 간 균형을 조절
- 개발팀(신기술 지향)과 운영팀(서비스 안정 지향) 사이에서 기술 및 의견을 조율하는 직군
- 핵심업무
(1) CI/CD : 지속 통합 & 지속 제공 (프로세스 통일 및 자동 시스템 구축)
(2) 소프트웨어 혹은 서비스의 보안 취약 point를 파악 및 해결
<참조 1> https://okky.kr/article/397565
<참조 2> https://ko.theastrologypage.com/database-administrator
<참조 3> https://www.redhat.com/ko/topics/devops/devops-engineer
'RoadMap > What's the Programmer?' 카테고리의 다른 글
[Life] 개발자 일상 (0) | 2022.08.04 |
---|---|
[Requirement] 개발자 연차별 요구사항 (0) | 2022.05.24 |
[개발자 현실] SI 업체 현실 (실화는 아니지만 어딘가 존재할 것 같은) (0) | 2022.05.18 |
프로그래머란? (0) | 2022.01.27 |
댓글