티스토리 뷰
우선 모든 판단에 Why로 시작하자
최근에 면접을 본 후 부족한 부분을 알게 되었고 10배 이상 뛰어난 개발자가 되는 법이라는 글을 보면서 깨달음을 얻어 적는 글입니다. 생각이 바뀌거나 추가 내용이 필요할 때마다 업데이트 예정입니다.
Why 습관화
모든 선택엔 이유가 있어야 한다!
생각한다고 생각 했지만 생각보다도 무심코 편리하기 때문에, 당장에 문제가 되지 않았기 때문에 판단이 간소화됐거나 지나쳤던 부분들이 많았습니다. 예를 들어 python으로 개발한 이유나, A가 아닌 B방법으로 개발한 이유 등이 됩니다.
기준은 비지니스
필요 없는 작업은 비용 손해
why에 대한 답을 위해선 기준이 필요하다. 그리고 why의 시작이 연구분야가 아니고서는 비즈니스를 하기 위함이 대부분일 것이다. 따라서 불필요한 개발은 비용 낭비가 된다. 터무니없는 비유긴 하지만 자동차를 만들어야 하는데 내비게이션을 만든다던지, 한 명이 케이크를 먹는데 포크를 10개를 제공한다던지 등이 될 것 같다.
장기적인 관점
아키텍처에 대한 고민은 장기적 비용의 해결책이 된다.
당장에 종료되는 서비스라면 현재 가장 적은 비용으로 가능한 서비스가 맞다. 하지만 오래오래 지속될 서비스라면 장기적인 비용도 고려해야 하고 아키텍처가 중요한 이유가 된다.
소프트웨어 아키텍처의 중요성 요약
- 프로젝트에 대한 이해도가 팀원들에게 공유가 되어야 한다 + 한번 결정되면 바꾸기 어렵다 -> 뭔가 중요한 것
- 무엇을 핵심 가치로 둘 것인가에 대한 고민이 필요하고 무엇이 중요 한가에 대한 결정이 핵심이다. 소프트웨어 아키텍처란 그 중요한 무언가 이다.
- 아키텍처가 좋지 않다면 기능을 추가할 때마다 더 많은 시간이 소요되고 고객이 줄어드는 결과까지 오기도 한다
10배 이상 뛰어난 개발자가 되는 법 요약
뛰어나 개발자와 평범한 개발자를 구분 짓는 것은 기술적이지 않은 부분에서 차이
- 적재적소에 필요한 도구를 파악해서 사용하기
- 혼자 끙끙 않지 말고 도움 요청하기
- 비즈니스적 가치를 주는 개발하기
Reference
반응형
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- go
- k8s
- gitignore
- cka
- inflearn
- http
- 원티드
- database
- web_server
- MSA
- HTTP/2
- HTTP/3
- Network
- 창업
- Isolate level
- buildkit
- 덕타이핑
- thetextbook
- Complier
- docker-compose
- no-op
- Git
- GitHub
- direnv
- QUIC
- Python
- 프리온보딩
- 위코드
- user-agent
- pytest
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
글 보관함