좋은 개발자가 되기위한 방법
27 Feb 2019
|
Be-Good-Programmers-Way
좋은 개발자가 되기 위한 준비물
1. 자료구조
- 자료구조를 알고 모르는건 정말 큰 차이가 난다. 모든 자료구조를 리스트와 배열로 처리하는건 좋지 않다.
- 상황에 맞는 자료구조를 사용 할 수 있어야하고, 각 자료구조의 특징을 알아야 적재적소에 사용할 수 있다.
2. OS
- OS같은 경우, LINUX가 많이 쓰이기 때문에 리눅스 환경에 익숙해져야한다
3. 알고리즘
- 가장 기본적인 문제해결 능력을 키우기 위한 방법중 하나이다
- 입사용으로 굉장히 많이 쓰이고 있고, 꾸준히 공부해야할 과목이다
- 구현력, 문제해결 능력, 배경지식이 필요하다
4. 프로그래밍 언어
- 자바 개발자인 경우, 자바에 대한 이해도 또한 다른 언어에 대한 관심이 필요하다.
- 예를 들어 JAVASCRIPT, PYTHON 등 가장 중요한건 각 언어의 장단점과 왜 사용하는지에 대한 이유를 알아야한다.
- 장단점에 대해서 알고 사용하는게 중요하다.
5. DBMS
- 기본적인 모델링( 물리, 논리 ) , 가장 많이 사용되는 DBMS ( MYSQL, ORACLE, POSTSQL 등) 에 대한 지식
- SQL, DB 용어, 인덱스 및 식별자 부식별자 등 뜻과 이유를 알아야한다
6. github 및 blog
- 취업을 하기전에도 취업후에도 중요하다. 공부를 꾸준히 했는지, 어떤 기술에 관심이 있는지 증명할 수 있단 수단
- 글을 흥미있게 잘쓰는 노력을 할 수 있으면 좀더 많은 사람들이 봐줄꺼라고 생각한다
7. 소프트웨어 구성, 배포, 리더쉽, 커뮤니케이션
- 이 부분은 주니어에서 시니어로 넘어갈 때 필요한 필수능력이라고 생각한다
- 커뮤니케이션의 중요성은 현대 프로그래밍을 할 때 당연히 가장 중요한 능력이라고 생각한다
- 시니어 개발자는 누군가에게 설명할 수 있고, 리딩 할 수 있는 능력이 필요하다
2. 취업을 위한 준비물
1. 회사를 고르는 기준
- 성장 할 수 있는 회사, 가장 좋은건 나와 회사가 같이 성장하면 BEST
- 개발 / 운영 / 배포를 모두 경험할 수 있는 회사가 좋다
2. 대외활동
- 취업후에도 지속적인 온라인, 오프라인 활동이 필요하다
- 스터디, 커뮤니티, 세미나 등의 참여가 필요하다
3. 알고리즘
- 문제유형을 파악, 속도 제약조건, 접근방법에 대해서 익숙해져야한다
- 외국 사이트, 해커랭크 코딜리티 같은 사이트에서 문제를 많이 풀어본다
4. 자바 기본문법
- 자바의 탄생이유, 장단점 및 특성 기본문법 파악 필요
- 객체지향 언어란? OOP란 무엇인가? 가장 좋은건 쉽게 설명할 수 있고 심플하게 말할 수 있어야한다
- 주저리주저리 말해봐야 본인의 지식한계가 보일 가능성이 크다, 아는것만 대답하자
5. DBMS SQL
- SQL 언어 사용법, DB에 대한 기본적인 지식이 필요
- 자바에서 DBMS를 사용할려면 DATA SOURCE가 필수적으로 필요하다, 그럼 이 DATA SOURCE는 어떻게 설정할 것인가?
- DBMS에 대한 지식
6. FRAMEWORK
- AOP, DI 컨테이너 스프링을 이루는 핵심 기술에 대해 알아야한다
- 왜 SPRING BOOT가 등장 했을까? 등장이유를 알고 왜 탄생했는지 알아야한다
7. 스터디 / 공부계획
- 스터디도 본인에게 맞는 스터디가 필요하다, 공부계획 또한 자신에게 맞는 방법을 찾는게 중요하다
8. 프로젝트를 하는 과정 정리
- 요구사항 및 본인 계획 정리, 문제해결을 한 과정에 대한 정리
- 기업에서 유심히 본다면 내가 문제해결을 한 방식에 대해서 볼 가능성이 크다.
- GITHUB readme에 정리, 블로그에 내용 정리
Comments