Codong's Development Diary RSS 태그 관리 글쓰기 방명록
기타 (3)
2021-02-12 23:31:08

1️⃣ 언제나 공부만하고 실제로 뭔가 만들어보지 않는 것

  • 백문이 불여 일타. 해보는 것이 제일 기억에 남는다.

2️⃣ 언제나 준비가 되지 않았다고 생각하는것.

  • 1번으로 돌아가자. 뭔갈 만들어낸다면 자신감이 생긴다.

3️⃣ 초반에 너무 열심히 해버리는것

  • 나만의 페이스를 만들자. 꾸준히 하는 습관을 만드는 것이 중요하지, 무리하다간 번아웃 온다.

4️⃣ 체크리스트만 보면서 공부하는 것.

  • 로드맵 등 이런것을 맹신하지말자. 프로젝트 중심의 배움을 거치자.

5️⃣ 데드라인 없이 공부하는 것.

  • 압박감이 없다면 게을러진다.

➕ 주니어 개발자가 빠르게 성장할 수 있는 비법은?

  1. 테크놀로지에만 집중하지 마라.
    • 전체적인 그림을 그릴 줄 알아야 한다. ex) 웹개발의 전체적인 모습 보기. 각각의 큰 그림들을 보면서 최소한 장점을 알아 놓고 다음에 내가 나아갈 방향을 알 수 있다.
  2. 무료 프로그래밍 일을 해보는 것을 추천한다.
    • ex) 삼촌 레스토랑의 일을 도와준다. 클라이언트와 어떻게 커뮤니케이션하는지 배우게 됨. 비즈니스가 필요한 것이 무엇인지. 등등 비즈니스 마인드가 중요하다

그냥 있기 때문에 배우는 것보다, 필요할 때 배우는 것이 가장 효과적이다.

혼자 공부하다 힘들 때 이 글을 보자. 🤯

출처

'기타' 카테고리의 다른 글

python 백엔드 면접 질문 정리  (0) 2021.02.11
지극히 개인적인 신입개발자 취업준비하기.  (0) 2021.01.23
2021-02-11 15:09:11

보호글입니다.
비밀번호를 입력하셔야 내용을 보실 수 있습니다.


2021-01-23 19:59:23

1. 내가 원하는 직장 or 직무 찾기.


나는 이것이 제일 중요하다고 생각한다. 내가 어떤 일을 하고 싶은지/어떤 공부를 하고 싶은지를 찾는 것이 먼저라고 생각한다. 예를 들어 안드로이드 개발자가 되고싶으면 안드로이드 관련 채용 공고에 자격조건을 보고 공부를 하면 되지 않을까?

진짜 내가 원하는 것이 무엇인지 생각을 해볼 때이다. 나는 광주 인공지능 사관학교를 수료하면서 Ai 기술을 접하면서 연구원으로 알고리즘 개발도 재밌을 것 같고, 웹 서비스 프로젝트를 진행했다보니 웹 개발도 재미있었다. 하지만 이 두 가지에 한 쪽 다리씩 걸쳐 걸어가다보면 가랑이가 찢어질 것이라는 생각이 들었다.

그래서 난 백엔드 개발자로 진로를 잡고 채용사이트에서 스타트업 위주로 찾아 봤다.


2. 채용 프로세스 숙지


  1. 서류전형
  2. 코딩 테스트(있을 수도 있고 없을 수도)
  3. 1차 면접: 실무 진 면접 (또 코딩 테스트 가능성 큼)
  4. 2차 면접: 대표면접

※ 회사마다 조금씩 다를 수 있음.


3. 채용공고를 뒤져 나온 자격 조건들.


1) 기본기

  • 기본적인 자료구조 지식
  • 기본적인 알고리즘 지식
  • 기본적인 OS 지식

2) 자격요건

  • 데이터베이스의 인덱스, 트랜잭션, 정규화, 일관성에 대한 이해도, 모델링 경험
  • 관계형 데이터베이스, ORM, RESTFUL API, 사용 경험
  • linux에서 운용되는 서비스, HTTP API 개발 경험
  • 코드의 신뢰성, 테스트 가능성, 유지보수성, 확장 가능성
  • 리팩터링을 해야 할 때와 신규 기능을 개발, 출시해야 할 때를 아는가
  • 오버 엔지니어링과 언더 엔지니어링에 대해 이해하는가
  • 웹 서비스 개발 경험
  • AWS, Azure 등 클라우드 환경 프로젝트 경험
  • RDS 분석 및 설계 가능하신 분
  • Git 등 형상관리를 깊이있게 이해하시는 분
  • Django Framework를 통해 배포까지 해보신 분
  • 웹 프로그래밍에 대한 이해가 있으신 분
  • Github Issue & Pull Request를 활용한 협업 경험이 있으신 분
  • Web Framework(Django, Spring Boot, Ktor)를 이용해서 Web Application 개발, 운영을 해보신 분 (Python, Kotlin/Java)
  • MySQL(Maria DB), MongoDB(DynamoDB) 등 RDBMS와 NoSQL 계열의 DB를 다뤄보신 분
  • 유저가 겪는 문제점을 찾고 기술로 해결하는데 관심 있는 분
  • 도커에 대한 이해, 오케스트레이션에 대한 이해

+α(우대사항)

  • 마이크로서비스 아키텍처에 대한 깊은 이해도

  • 대용량 트래픽 처리 경험

  • 유닛 테스트 구성 경험 및 관련 지식

  • Kinesis, Kafka, RabbitMQ 관련 지식

  • DynamoDB, Redis, Elasticsearch 관련 지식

  • NoSQL 사용 경험

  • 커머스, 풀필먼트 시스템 구축 또는 유지보수 경험

  • DB 실행계획 및 HINT 사용 가능

  • Design Pattern을 공부하고 적용해보신 분

  • 대규모 트래픽을 수용해 본 경험이 있으신 분

  • 브랜딩, 사용자 경험 디자인의 필요성에 공감하시는 분

  • 클라우드 컴퓨팅 플랫폼(AWS, GCP, Azure 등)을 활용한 업무 경험

  • MSA 도입 및 활용 경험

  • Message Queue 시스템 도입 및 활용 경험

  • Container Orchestration(Kubernetes, Docker Swarm 등) 활용 경험

  • Neo4j, ArangoDB, Amazon Neptune 등 Graph Database 로 개발 경험이 있으신 분

  • AWS 기반의 서비스 개발 경험이 있는 분

  • Docker 컨테이너를 이용한 서비스 개발 경험이 있는 분

  • 상용화 서비스에 대한 개발/운영 경험이 있으신 분

3) 역량

  • 비지니스 로직을 빠르고 정확하게 구현할 수 있는 분
  • 설계부터 배포까지 일련의 과정을 이해하는 분
  • 새로운 기술을 두려워 하지 않고 빠르게 습득할 수 있는 분
  • 맡은 업무에 책임감이 높은 분
  • 정형데이터, 비정형데이터 차이를 아시는 분
  • 프론트/백엔드 구분 없이 시야가 열려 있으신 분
  • 다양한 경험과 성장에 대한 의지가 있으신 분
  • 먼저 의견을 제시하는데 거리낌이 없으신 분
  • 타 부서와도 원활하게 의사소통 할 수 있는 분
  • 코드리뷰와 테스트코드 작성 능력이 있는 분
  • 자동화를 지향하는 분
  • 오픈소스 활동을 지향하는 분
  • 테스팅을 항상 생각하시는 분
  • 소프트웨어개발에 대한 고민을 많이 하시는 분
  • 성능 최적화를 위해 지속적으로 고민하고 노력하시는 분
  • 한 가지 일에 몰두하여 성취한 경험이 있으신 분 (게임, 학업, ...)
  • 문서화의 필요성에 공감하시는 분
  • 기획부터 개발, 배포까지 프로젝트 전반에 대해 관심이 있으신 분

마무리


적고보니 이건 뭐,,, 다 한다는 것은 얼마나 오래 걸릴지 감이 안온다.. 하지만 이것을 다 할 필요가 없다고 생각한다. 여기서 중요한 것은 내가 가고자 하는 곳에 맞춰서 준비하면 된다고 생각 한다. 해당 기업이 가고자 하는 방향을 보고, 내가 재밌을 것이라 생각하거나 관련 서비스 개발을 하고 싶다는 생각이 든다면 그곳을 목표로 정하는 것이 맞다고 생각한다.

그래도 스윽 훑어보면 어느 정도 원하는 공통적인 부분이 있는 것 같다.웹서비스 개발해봤는지, 협업 툴 사용해서 개발해봤는지, DB 써봤는지, 이것들에 대한 이해도가 있는지, 이런 느낌인 것 같다. 추가로 마인드 셋이 얼마나 잘 잡혀있는지를 보는 것 같다.

자. 결정했으면 하나씩 차근차근 하다보면 괜찮지 않을까? 시작이 반이라 했다. 우선 기본기부터 다듬으러 가자~~
.
.
.

추가로 2020년도 백엔드 로드맵 첨부


출처 : https://github.com/devJang/developer-roadmap/blob/master/pdf/backend.pdf

'기타' 카테고리의 다른 글

독학할 때 자주하는 실수 5가지  (0) 2021.02.12
python 백엔드 면접 질문 정리  (0) 2021.02.11