Chillax in dev

신입 개발자 1~2년차가 반드시 갖춰야할 능력에 대하여.. 본문

Dev Story/고민

신입 개발자 1~2년차가 반드시 갖춰야할 능력에 대하여..

Seong Story 2020. 12. 16. 09:35
728x90

신입 개발자 1~2년 차가 반드시 갖춰야 할 능력에 대하여..

이제 신입 개발자로 필드에 나가 회사에서 성장하기 위해 어떤 것을 갖춰야 할지 생각해볼 필요가 있다.

연말이지만 코로나가 3단계 검토중인 와중이라 슬프지만 공부나 해야겠다..

신입으로 회사에 들어가면 분야를 막론하고 새로운 회사 플랫폼에 적응하고 사수님이나 대리님께 업무 지시를 받는 일이 생길 것이다. 


<내가 생각하는 갖워야할 덕목>

1. 질문은 성장의 시작이다.

- 신입 개발자가 되면 무엇보다 자신을 객관화하여 생각해야 한다. 나는 지금 얼마나 성장하고 있는지를 하루, 일주일, 한 달을 비교하여 실력적인 측면에서 스스로를 객관화해야 한다. 신입 개발자의 퇴사율은 상당히 높다고 한다. 너무 힘들다면 아직 준비가 덜 된 것이니 다시 준비하는 게 좋지만 포기하기 싫다면 질문을 하고 스스로를 성장시켜야 한다. 

 

- 학생 마인드를 버려야한다. 우리는 배우는 것이 당연한 환경에서만 공부했다. 그렇기에 학생의 입장에서 모든 걸 생각하는 것에 익숙해져 있다. 내게 알려주고자 하는 상대방에 세 감사의 마음을 느끼야 한다.

하나를 질문할 때에도 잘 정리해서 30분 을 넘기지 않게 핵심을 짚어 질문하자! 또한 질문한 후에 내가 정확하게 이해한데 맞는지 점검하고 나아가 이 내용을 공유하기 위해 회 내내 위키가 있다면 등록하고 없어도 내가 따로 정리하여 복습하는 것이 좋다.


2. 회사의 니즈를 파악하자

- 회사에서는 그렇다면 어떤 신입 개발자를 원하는 걸까? 여러 구직 플랫폼에서 구인하는 내용을 바탕으로 정리해보자

 

  • SQL로 CRUD를 구현해 봤는지 
  • 손 코딩 경험, 웹 개발자를 희망하는지, 코딩을 즐기는지 여부
  • 수리력 논리력을 가지고, 절차적 생각과 IT 개념 흡수에 거부감이 없는지
  • 컴퓨터 용어 (컴공인지) 얼마나 아는지
  • 서버, 네트워크 단에 대한 이해
  • 프로젝트 경험 내가 얼마나 만들 수 있는지
  • 홈페이지 만들어본 경험

- 이외에도 다양한 요소들이 있지만..

회사는 키워쓰기보단 일명 중고 신입, 어느 정도 알아서 바로 업무에 투입되는 신입을 원할 것은 당연하기에 믿을 것은 본인의 실력뿐이다. 내가 웹 개발자를 하고 싶다면 웹 개발에 대해 끝없이 탐구하고 연구해야 한다.

 


3. 그렇다면 실제 공부할 내용을 체크리스트로 정리해보자

- 복잡하니까 심플하게 생각하자. 핵심은 앱이든 웹이든 작품을 완성할 줄 알아야 한다!

뭐든 만들어봐야 실력이 는다.

 

- 화면단 지식 : 신입 개발자는 대부분 View단의 작업을 하게 된다.

  • A-jax/HTML/CSS/DOM/JavaScript
  • JSON을 이용해서 기본적인 AJAX를 사용하여 동적인 프로그램 가능
  • 자바스크립트로 DOM API를 이용해서 동적인 화면을 표현
  • XHTML과 HTML의 차이점과 등장 배경을 이해
  • 화면의 레이아웃을 시멘틱 하게 구현

- 데이터 베이스단 지식

  • 관계형 데이터 베이스의 ER-다이어그램 작성 가능
  • 정규화와 역정 규화를 통해 데이터를 가공하고 정제할 줄 알기
  • 적절한 인덱싱, 서브 쿼리, 조인, 뷰 등등으로 원하는 테이블 관리
  • Hibernate와 iBatis 등의 OR-Mapping 프레임웍의 등장 배경과 사용 이유에 대한 이해(ORM

- 서버단 지식

  • 자바에 정통하자 OOP, 추상화, 다형성, 캡슐화 등등
  • 중요한 자바 API 활용 가능 외부 jar를 활용, Collection API, Reflection API, generic, annotation
  • 디자인 패턴 숙지 싱글톤 말고도 종류가 많아요.

- Servlet/JSP 

  • 브라우저와 서버 간의 통신에서 HttpServletRequest/Response 객체 생명 주기와 중요 메서드 이해
  • 웹 애플리케이션 구조 및 배포의 일련의 과정 이해
  • filter, listener, servlet 배포 방법 및 프로그래밍 이해 (web.xml의 이해)
  • JSTL과 EL 이해(JSP 1.2와 2.0차 이점 이해) 및 Custom Tag handler 작성 가능

- 프레임워크 사용

  •  Struts : 전형적인 MVC패턴으로 구성된 스트럿츠의 구조를 파악하고 간단한 게시판을 코딩할 수 있는 수준
  • Spring : 스프링 혹은 EJB 컨테이너가 빈을 관리함으로써(Ioc) 얻는 이점과 이를 통해 이루어지는
                 다양한 엔터프라이즈급 서비스(AOP 등)등을 이해하고 사용할 수 있는 수준  

 

- 영어는 잘해야 합니다.

. 최소 토익 750 정도 수준의 영어 실력(각종 API, references의 원활한 참조는 구글링에 필수입니다.)
   - Reading 400점 이상 --> 기본적 독해가 가능한 최소 실력
   - A4지 한 장 분량의 (영자신문 수준의) 영문을 10분 이내로 읽고 90% 이상 이해 가능하도록 훈련하자.

 


정리

 

이렇게 정리해 보니 자신의 부족함을 더 절실히 느낀다. 

얼마나 기술 서적을 읽었고

정말 흡수력 있게 어떤 지식을 이해했는지.... 그렇다면 내가 안 보고 하드코딩이 가능한지

항상 스스로를 돌아보며 객관화하는 능력을 개발하자.

728x90
LIST
Comments