[study] 개발자 구인공고를 아카이빙 하며 느낀 좋은점

Taurine·2022년 1월 17일
41
post-thumbnail

좋은점 정리

1. 요즘 기술 트렌드가 뭔지 알 수 있음.

2. 전체적인 기술 생태계 흐름을 읽을 수 있음.

3. 다양한 기술들을 인덱싱 해두어서 필요할 때 꺼내어 조사를 시작할 수 있음.

4. 위에 리스트업 한 것들을 기반으로 성장 방향을 탐색할 수 있음.


기술 리스트업 (진행중)

  • 어떤 식으로 카테고리를 나눌까에 대해서는 계속해서 고민하고 있음.
  • 각각 기술들에 대해서 깊게 조사하기 보다 이걸로 뭘할 수 있는지, 어떤 문제 해결할 수 있는지 정도만 간략하게 정리하려고 함.
  • 계속해서 정리하고 작성하는 중. 틀린것 있을 수 있습니당~

1. 마인드셋

어떤 관점으로 일에 임하는지

1) 성장을 갈망하는

  • 멈추지 않고 성장 추구하는
  • 팀 성장 방법 고민하는
  • 새로운 방법론/기술 도입 즐기는
  • 일 주도적으로 이끌어가는

2) 협업을 즐기는

  • 자기 생각 이해 쉽게 표현할 수 있는
  • 동료와의 커뮤니케이션에 능숙한

3) 문제해결에 집중하는

  • 문제의 본질에 집중하는
  • 기술보다 도구의 가치에 집중하는
  • 문제 해결하는 것에 즐거움을 느끼는
  • 고객 중심으로 생각하는
  • 우선순위를 구체적으로 파악하는
  • 데이터 기반으로 문제를 파악하는

2. 방법론

어떤 관점으로로 개발에 임하는지

1) 아키텍쳐

뭔가를 만들 때 어떤 재료들을 어떻게 조합하여 만들지에 대한 고민하는 것

  • 아키텍쳐 장단점을 이해하는

  • 아키텍쳐가 생산성에 미치는 영향력 경험한적 있는

  • MVC / MVVM / Serverless / Microservice / Monolithic

2) 애자일

뭔가를 만들 때 부분에서 전체로 접근하는 것이아니라, 느슨한 전체에서 조밀한 전체로 접근하는 것

  • 데일리 스크럼 / 짝 프로그래밍 / 테스트 주도 개발

3) 자동화

뭔가를 만들 때 기계적이고 반복적인 작업을 사람의 개입 없이 진행되도록 함으로써 직관적이고 창의적인 작업에 보다 많은 주의를 기울일 수 있도록 하는 것

  • 자동화로 개발 생산성 끌어올린 경험이 있는

5) 리팩토링

뭔가를 만들 때 있어야 할 곳에 있어야 할 것들이 있도록 정리정돈 하는 것

  • 클린코드를 지향하는

3. 인프라

프로그램이 돌아가는 물리적 기반.

1) 클라우드

통신을 통해 활용한 수 있는 외부에 위치한 인프라

  • AWS EC2 / Firebase / AWS Lamda / TaskWorld

2) 컨테이너

하나의 서버를 여러개처럼 사용하는 방법

  • Docker / Kubernetes / Ansible

4. 런타임

이걸로 프로그래밍 언어를 실행할 수 있음.

1) 예시

  • Node / JVM(Java Virtual Machine) / Web-Browser

5. 언어

이걸로 프로그램을 만들 수 있음.

1) 기타

  • Python / Java / JavaScript / Kotlin / Swift / Golang
  • C / C# / C++
  • HTML / CSS / Stylus
  • Typescript
  • GraphQL

6. 툴

내가 만드는 프로그램과 완전히 독립되어 있는 개발도구.

1. IDE

Integrated Development Enviroment
개발에 필요한 도구들을 모아둔 종합 개발도구 (코딩, 디버깅, 컴파일, 배포)

1) 파일 단위

  • Android Studio / Visual Studio / Visual Studio Code / Xcode / Pycharm

2) 코드 단위

  • Jupyter / Zeppling

2. DBMS

DataBase Management System
내가 만드는 프로그램에 필요한 데이터를 관리하는 개발도구.

1) SQL

Structured Query Language
테이블 형식의 구조화 된 데이터를 다루는데 사용되는 언어

  • mysql / mariadb / aws rds / postgreSQL / aurora db

2) NoSQL

Non Structured Query Language

  • mongodb / realm / counchbase /

3. WorkSpace

  • monday / flow / jira / slack /

4. Note

  • notion / bear

5. DevOps

1) CI/CD

  • Github Actions / Jenkins

2) Monitor

  • NewRelic

6. SCM

  • Source Configuration Management

  • 코드와 더불어 그 코드와 관련된 메타적인 데이터(버전, 메모, 배포 등)까지 같이 관리하는 프로그램.

  • git / github / gitkraken /

7. Design

  • Figma

8.Build

  • Gradle / Maven / CocoaPods

99. 기타

  • oltp / olap
  • elastic search

7. 프레임워크

  • 내가 만드는 프로그램의 틀을 잡아주는 개발도구.

Example

AI

  • Tensorflow
  • Pytorch

distributed processing

  • Hadoop
  • Spark

Web

  • Spring
  • Vue.js
  • Nest.js
  • Next.js
  • Nuxt.js
  • React.js
  • Express.js
  • Mithril.js

Test

  • Mocha

ORM

  • CORMO
  • Hibernate

기타

  • Thrift

8. 라이브러리

  • 내가 만드는 프로그램에 가져다 쓸 수 있는 개발도구.

1) bundler

  • Rollup
  • Webpack

2) State

  • Redux
  • Mobx

3) Test

  • Chai
  • Istanbul
  • Sinon

9. 프로토콜


10. 인터페이스

API

  • REST
  • JPA

6개의 댓글

comment-user-thumbnail
2022년 1월 18일

흥미로운 글이네요!

1개의 답글
comment-user-thumbnail
2022년 1월 25일

와! 회사의 JD를 아카이빙해서 분석한다는 관점이 너무 참신하네요~ 특히 마인드셋과 우대사항에 대한 워딩의 의미를 분석해보는 것은 재밌을것 같네요 :) 인사이트 감사합니다!

1개의 답글