posted by OFOFF 2024. 6. 5. 15:57

어제 작성했던 프로그래머로 전직을 꿈꾸는 분들을 위한 첫 걸음에 이은 두 번째 글입니다. 

 

현재 재직하는 직장 생활에 만족하지 못하는 가장 큰 이유는 지금 하고있는 일이 적성에 맞지 않는경우가 대부분입니다.  그런 경우 일이 힘들거나 지루해도 그 만큼의 보상이 주어진다면 어려움이나 고통을 견딜수 있지만 현실에서는 그러지 못한 경우가 대부분이라 퇴사를 고민하거나 이직을 생각하시는 분들이 많을거라 생각합니다. 

 

이 글을 보시는 분중에 나이가 30대 초반(30~33)이나 그 이전인 분들은 이직을 하시기를 권유 드립니다. 물론 대학때 전공이 전산쪽 이신 분들은 제가 따로 드릴 얘기가 필요없겠지만 전공이 컴퓨터나 전산과는 전혀 다른분들이라면 제가 도움이 될만한 얘기를 전해 드릴수 있을것 같습니다.

 

저는 전공이 재료공학과 입니다. 물론 대학시절 전공과는 상관없는 C언어 프로그래밍 수업을 신청해서 듣곤 했습니다.(두 학기나 들었답니다) 그리고 제가 공부하던 시절에는 공대생들은 전부 FORTRAN77이라는 언어를 배워서 시험을 보기에 그럭저럭 공부를 했던 기억이 납니다. 이 두개의 언어가 제가 대학시절 접했던 언어입니다. 대학시절 배웠던 언어는 단지 논리적인 공부를 하는데 도움이 되었을뿐 프로그램을 작성하는 수준까지는 아니였기에  프로그래머 생활을 하는데 그렇게 크게 도움이 된것 같지는 않습니다. 프로그래머 생활을 하는데 전공은 전혀 상관이 없으니 괜히 기죽거나 하지 마세요.

 

자 그럼 이직을 위한 첫 단계는 무엇인지 말씀드리겠습니다. 우선 프로그램 장기 과정(보통 6~7개월)짜리 학원이 여러군데 존재합니다. 아무래도 서울쪽이 좋은걸로 알고 있습니다. 이직을 마음먹으셨다면 힘들더라도 IN 서울 학원을 추천합니다. 어떤 학원이 좋은지는 본인의 선택입니다. 단 나라지원이 되는 학원을 선택하셔야 경제적으로 부담이 없으니 꼭 반드시 확인하시고 장기과정을 등록하시기 바랍니다. 요즘은 배움카드라는 걸로 학원비와 별도로 일정의 보조금도 지급하는걸로 알고 있습니다. 물론 변동이 생길수 있지만 지금 현재까지는 이렇게 진행되고 있습니다. 그리고 제일 중요한 한가지프로그램만 잘 작성한다고 클래스에서 1등을 하지는 않습니다. 사람들을 잘 다독이고 팀원을 잘 이끌 줄 알아야 하며 남들이 생각하지 못하는 아이디어를 가지고 있어야 합니다. 물론 프로그램을 잘 작성하지 못해도 그런 것들이 작성의 미숙함을 상쇄시켜줄 수 있습니다. 저도 장기과정 시절 프로그램은 미숙했지만 수업시간에 선생님의 질문에 대답을 잘 하고 사람들을 잘 이끌며 저희 팀이 작성한 프로그램이 제대로 실행이 되어 최우수상을 받았습니다. 최우수상(1등)이 좋은 이유는 잘 아시리라 믿습니다. 보통 채용문의가 들어오면 1순위로 지원가능하며 최우수상 또는 1등한 사람이 우선적으로 업체를 고를수 있습니다. 연봉도 취업 고려 대상에 포함되기 때문 입니다.

 

학원을 여러군데 알아 보시고 학원에 가시기 전에 알게 되는 사실은 어제 알려드린 프로그래머 직업의 종류와는 다르게 모집하는 분야가 좀 상이합니다. 그 이유는 프로그래머가 하는일(명칭)이 시대에 따라 변하기 때문입니다. 변하는 가장 큰 이유는 잘 아시겠지만 서버 CPU의 발전 속도, SSD의 발전속도, 하드웨어의 발전속도 등에 의해 프로그래머의 개발환경도 점점 변하기 때문입니다. 물론 모바일의 등장과 함께 모바일 분야도 성장하고 있습니다. 제가 일하던 시절에는 없던 분야였는데 말입니다.

 

요즘은 웹프로그래밍(JSP), 모바일프로그래밍(Android, IOS), 프론트엔드, 백엔드, 그래픽디자이너, 데이터분석가, 데이터 엔지니어 등으로 구분됩니다. 물론 자세히 분류하려면 제가 나열할수 없을만큼 많지만 그래도 요즘 각광받는분야는 7~8가지 입니다. 제가 하는일은 데이터 엔지니어입니다. 제가 이 일을 시작했을 당시에는 데이터엔지니어라는 직업이 없었습니다. 옛날 용어로는 ETL(Extract, Transform, Load)이라는 용어를 더 많이 썼던 시기입니다. 직업을 고를때는 학원을 정한 후 상담을 꼭 받으시길 바랍니다. 구글링이나 추천으로는 정확한 사실을 알수 없기 때문이고 본인의 장점에는 어떤 분야가 잘 맞을지는 학원 선생님의 추천이 가장 중요합니다.

 

학원을 선택 하실때는 집에서 가까운 위치가 좋지만 정말 이직이 꼭 필요하다고 느끼신다면 거리에 상관없이 학원을 정하시고 결정하시기 바랍니다. 학원 선생님의 강의도 정말 중요한 요소입니다. 좋은곳에 많이 보냈다고 다 좋은게 아니라 본인의 성격과 능력에 잘 맞는 선생님을 고르시는 것도 본인의 노력 여하에 달렸습니다.

 

한가지 꼭 기억 하실 말은 "열심히 한다면 어떤식으로든 보답은 돌아온다" 입니다. 명심하시고 첫 단계를 잘 시작하시기 바랍니다.

'Program' 카테고리의 다른 글

프로그래머로 전직을 꿈꾸는 분들을 위한 첫 걸음  (0) 2024.06.04
posted by OFOFF 2024. 6. 4. 15:55

우선 이글을 쓰는 이유는 현재 직업에 만족하지 못하는 분들과 자신의 적성을 제대로 찾지 못해 방황하시는 분들을 위해 제 경험을 통해 많은 분들이 궁금해하시는 프로그래머란 직업이 어떤 직업인지 그리고 무엇을 하는직업인지를 알려드리고 그럼에도 불구하고 프로그래머라는 직업에 도전해 볼만한 직업인지 판단하시는데 도움을 드리고자 이렇게 글을 씁니다.

 

오늘은  프로그래머란 어떤직업인지에 대한 내용을 얘기해보도록 하겠습니다.

 

프로그래머란 직업은 말 그대로 프로그램을 작성하는 직업입니다. 일반적인분들은 프로그래머라고 하면 프로그램만 잘 작성하면 되는줄 알고 있습니다. 하지만 정작 중요한건 프로그램을 왜 만들어야 하고 어떻게 만들어야 잘 만들수 있는지 고민도 해야 하는데 이부분도 프로그래머의 일부분 입니다.

 

프로그래머의 직업도 여러가지가 있는데 보통의 분들은 그런 종류에 대한 인식이 없기에 무작정 프로그래머의 길에 접어들고나서 "아 이건 내길이 아니다" 하고 그만 두시는분들도 의외로 많습니다.(10명중 6~8명정도 된다네요) 이런 불미스런 일(중도 포기)이 생기지 않으려면 내가 어떤분야의 프로그래머가 될 것인지 시작부터 고민을 하시고 해당분야로 들어오시는게 맞다고 생각합니다. 

 

우선 프로그래머의 직업이 어떤종류가 있는지부터 알아보겠습니다. 보통 일반적으로 두부를 칼로 썰듯이 구분해서 종류를 나누는건 사실 상 쉽지 않습니다. 하지만 대략적인 분류를 알아야 해당분야로 지원을 할수 있기에 큰 몇가지 카테고리를 나누도록 하겠습니다.(고전적인 의미로 분류)

 

1. 게임 프로그래머
게임의 시나리오와 스토리 보드를 구성하는 게임기획자, 게임의 그래픽을 만드는 그래픽디자이너, 게임의 음악을 완성하는 게임음악가 등으로부터 받은 자료를 토대로 어떻게 프로그램화할 것인지 설계하고 게임을 프로그램을 이용하여 완성하는 직업. 게임 엔진을 개발하기도 하고, 그래픽 라이브러리를 제작합니다. 그래픽 특수 효과 제작은 물론, 키보드와 마우스 등의 입력 장치 제어 루틴을 제작하거나 그래픽 파일이나 사운드 파일이 정상적으로 작동될 수 있도록 해 주는 프로그램을 작성합니다. 이 외에도 게임을 구동 후 테스트하여 버그(에러)를 찾거나 수정하는 일을 합니다.  

 

 

2. 응용 프로그래머
컴퓨터 내의(서버와 클라이언트) 응용과 연산, 실행이 가능한 프로그램 제작과 유지보수를 하는 직업입니다. 호스트(서버) 프로그래밍 언어와 데이터 베이스 언어(SQL)를 사용해서 작성된 프로그램을 통해 데이터에 접근하는 프로그램을 작성하는 직업으로 증권사 HTT 프로그램, 유통회사에서 사용하는 공급관리시스템 ,기업 운영을 효율적으로 처리하기 위한 전사적자원관리 및 고객관리, 항공권 및 열차표 발행 및 예매 프로그램등을 제작하거나 유지보수 합니다. 참고로 전 SQL언어를 사용하여 대용량DB(Oracle, Sybase, Tibero, DB2, Mysql등등)의 데이터를 추출해 오는 일을 주로 하였습니다.(Data Engineer)

 

 

3. 웹 프로그래머
인터넷 상 웹페이지 또는 스마트폰용 모바일 어플리케이션의 프로그램을 담당하며, 웹 상에서 각종 자료들을 보여줄 수 있도록 웹 프로그래밍 언어를 이용해 프로그램을 설계하고 작성합니다. 웹 개발자로의 취업 준비는 비전공자라 하더라도 비교적 손쉬운 편이지만 입사 후 전문 개발자로 성장하기 위해서는 다양한 프로그래밍 언어를 공부하여야 하며 변화가 많은 분야로써 꾸준히 자기계발을 해야하는 분야입니다.

 

 

4. 시스템 프로그래머
응용 프로그램들을 총괄하고 관리하는 사람으로 컴퓨터 시스템이 운영체제와 같이 작동될 수 있도록 하고 언어의 처리, 컴파일러 및 자료 파일의 관리 프로그램 등에 필요한 프로그램을 작성하는 직업입니다.
주로 해외에서는 서버나 운영체제와 같은 시스템을 구축하고 설계하고 개발하지만 아직까지 우리나라에는 시스템서버를 개발할만한 환경이 되지 못하는 상황입니다.

 

 

5. 임베디드 프로그래머
컴퓨터와 기계들의 프로그램을 담당하는 직업이며 내장형 시스템을 연구하고 개발하며 설계하는 직업입니다. 하드웨어 도면 정도는 볼 줄 알아야하고 C언어 뿐안 아니라 어셈플리 언어 (LOW LEVEL LANGUAGE) 를 할 줄 알아야 합니다. 컴퓨터 이외의 장비에 사용되는 칩을 임베디드라고 하는데 자동차, 에어컨, 냉장고, 공장 자동화(FA) 장비에 이르기까지 매우 다양한 제품에 사용됩니다.

 

 

6. 보안 프로그래머
정보관리의 핵심인 보안 분야의 솔루션과 백신 제작을 담당하는 직업으로 컴퓨터 바이러스 발생이나 해커의 침입에 대비해 방화벽을 구축하고 바이러스에 감염됬을 때 감염 경로나 원인을 찾아 문제를 해결하는 등의  일을 하기도 한답니다.

근래에는 코인의 해킹으로 인해 예전보다는 주목받는 직업군이 된 듯합니다.

 

 

오늘은 프로그래머에 대한 첫 걸음을 뗀 날인 만큼 여기서 줄이도록 하겠습니다. 다음시간에는 프로그래머로 전직을 위한 내용을 시작하도록 하겠습니다.