<취업가이드>IT시스템 개발자의 경력

 ‘프로그램을 개발할 때 DB를 조인(join)해서 개발해본 경험이나 트리거(trigger)기능을 사용해본 경험은 있으세요?’

 ‘……’

 ‘시스템 요구분석시 어떻게 사용자의 요구사항을 표현하나요? DF(Data Flow)나 DS(Data Store)는 어떻게 구현하셨어요?’

 ‘……’

 ‘프로젝트 관리시 형상관리는 별도의 툴을 사용하셨나요?’

 ‘……’

 ‘프로젝트 제안서 작성시 프로젝트 품질관리에 대한 방안에 대해 말씀해보세요’

 ‘……’

 예전에 SI사업을 하면서 프로젝트에 필요한 프로젝트 관리자, 시스템 분석자나 개발자를 면접하면서 몇가지 세부적인 질문을 해보면 대략 입사 지원자들의 수준을 평가할 수 있으며 실제 시스템 구현시 필요한 경력을 어떻게 거쳐왔는지, 프로그램은 체계적으로 개발했는지, 프로젝트 관리는 어떤 방법을 사용해 관리했는지 평가할 수 있게 된다.

 기업에서 필요한 IT시스템의 관리자, 분석·설계자, 개발자들은 기본적으로 거쳐야 할 주요한 단계(phase)가 있으며 단계별로 수행해야 할 하부업무(sub task)들을 어떤 경험치로 수행했느냐에 따라 지원자들을 평가하는 기준이 될 수 있다. 이러한 기본적인 단계들에서 경험했던 지식과 경험들을 바탕으로 다양하게 쏟아지는 각종 IT관련 패키지에 대한 솔루션 이해 및 컨설팅을 응용, 추가해야만 비로서 IT관련 전문가로 성장할 수 있는 토대를 마련할 수 있는 것이다.

 첫번째 단계인 계획단계에서 갖춰야 할 하부업무로는 현 정보시스템의 정의 및 요구사항을 평가하며, 주요업무별 CSF(Critical Success Factor)를 파악해 우선순위에 따라 정보시스템에 대한 비전을 제시하고 이에 따른 상위수준의 데이터 및 기능 프로세스들을 정의하며 업무영역별 개발접근 방안을 수립할 수 있어야 한다.

 두번째 단계인 분석단계에서 갖춰야 할 하부업무로는 업무적인 관점에서 데이터 모델링을 실시할 수 있어야 하며 대표적으로 ERD(Entity Relationship Diagram) 등으로 표현할 수 있어야 한다. 또한 데이터 모델링과 더불어 프로세스 모델링을 실시해 프로세스를 정의하며 프로세스 분할에 따라 단위 프로세스 정의를 실시할 수 있어야 한다.

 데이터 모델링과 프로세스 모델링과의 상관분석을 실시해 데이터와 프로세스 모델을 검증·수정함은 물론 초기의 비즈니스 로직을 설정할 수 있어야 한다. 부가적인 방법으로 DFD(Data Flow Diagram)을 작성할 수 있어야 한다. 정보시스템의 개발과 더불어 별도의 작업으로 개발 및 운용환경에 대한 하드웨어·네트워크·보안·감사 등의 정의 및 분석을 병행실시할 수 있어야 한다.

 세번째 단계인 실행단계에서는 시스템 기능의 상세설계 및 물리적인 데이터베이스 모델을 시행하며 상세한 정보기술(신규 업무절차의 정의, 하드웨어·네트워크 구조도 등)을 설계해야 한다. 설계에 따라 데이터베이스를 구축하고 프로그램 구현 및 시스템에 대한 단위, 연결된 시스템들의 종합테스트를 실시할 수 있어야 한다.

 현재 이러한 단계적인 방법은 정보기술이 예전의 구조적 분석 설계에서 객체지향, 컴포넌트 기반기술로 향상되며 변화하고 있지만 단계별에서 수행해야 할 작업절차, 작업방법, 도큐멘트, 기술 또는 기법, 관리작업, 툴 등은 IT시스템의 전문기술영역을 확보하고자 하는 지원자들이 갖춰야 할 필수적인 지식인 것이다.

 김경구 서울써어치 전무