나의 성장을 위한 정리1
출처는 내가 정말 좋아하는 드림코딩의 엘리님.
https://www.youtube.com/c/%EB%93%9C%EB%A6%BC%EC%BD%94%EB%94%A9by%EC%97%98%EB%A6%AC/featured
1. 실수를 통해 배우고 성장하자.
- 실수 다이어리 작성하기. 날짜, case, what I learned.
- 내가 어떤 실수를 했는지 되짚고, 그 실수를 통해 성장하는 마음가짐 갖기
2. 멘토 찾기
- 내가 본받고 싶은 사람이 요즘은 어떤 공부를 하시는지, 그에 대해 어떻게 생각하시는지
- 내가 현재 갖고 있는 고민을 구체적으로 말씀드리며 어떻게 해야 성장할 수 있을지 조언 구하기
- 멘토로부터 얻은 귀중한 조언 항상 기록해두기
- 노트 작성 팁 : 질문 / 해답 - 해답1, 해답2, 기타 배운 점
3. 피드백 받기
- 피드백 주는 문화가 이미 형성되어 있어도, 다른 사람이 피드백 줄 때 까지 기다리지 말고 내가 나서서 받기.
- 질문 할 땐 구체적으로. 구체적일 수록 제대로 된 피드백이 온다.
- 피드백 노트 작성하기.
- 노트 작성 팁 : 강점, 개선해야할 점 등을 명시한다. 원하는 주제에 집중해서 작성하기.)
4. 성장 다이어리
- 프로젝트 또는 공부 등 활동을 하고 난 뒤 해당 활동에 대해 돌아보기
- 해당 활동에서 배울 점, 그리고 그때그때의 마인드셋 기록해두기.
- 성장 다이어리를 통해 내가 원하는 것 명확하게 찾기
5. 일관성 있게 꾸준히 노력하자
- compounding 효과. 티끌모아 태산이다.
- 원하는 것이 있다면 시간이 얼마나 걸리든 일관성 있게 해나가기.
- 하루 단 10분이라도 하는 것이 안하는 것 보다 낫다.
6. 질문 잘하는 법
- 내가 하고 있던 프로젝트와, 그 프로젝트가 무엇에 대한 것인지 간략한 설명. 문제가 발생하게 된 배경. 그 문제를 해결하기 위해 시도한 방법들. 내가 가진 의문이 정확히 무엇인지. 그래서 어떤 조언을 얻고 싶은 건지.
- 예 : ㅇㅇ한 문제를 해결하기 위해 ㅇㅇ한 업무를 하고 있었는데, A라는 방법을 이용해 문제를 푸는 도중 ㅇㅇ한 문제가 발생했습니다. 그래서 구글링해보니 B와 C라는 방법도 있다는걸 알게 됐습니다. 그런데 이 방법이 우리 프로젝트의 방식과 어울리는지 잘 모르겠습니다. ㅇㅇ와 ㅇㅇ(구체적인 포인트)에서 조언을 주시면 감사하겠습니다.
- 해결하고자 하는 문제에 대해 clear한 context 제공.
- 시도한 방법은 무엇인지, 대안으로 서칭한게 있는지, 있다면 왜 사용하지 않았는지.
여기서부터는 짧지만 중요한 것들.
1. 어느정도는 혼자 해결하려 노력해보기. 하지만 너무 오래 혼자 끙끙 앓지는 말기.
2. 내가 맡은 분야가 아니어도 관심 갖고, 기회가 주어지면 언제든 뛰어들기.
3. 검증단계 철저히! 항상 되는 코드인지 확인 후 제출할 것. definition of done에 맞는지. 그리고 스스로 리뷰해 볼 것. 비판적인 시선으로 개선할 부분은 없는지 깐깐하게 볼 것.
4. 항상 겸손한 자세로 배우기. 전에 하던 방식에 집착하지 말고 항상 다른 사람의 방식을 배우며 성장하기.
5. 뒷담하지 않기. 말은 항상 빠르다.
6. 팀플레이 할 것. 팀에서 필요한 일들이 무엇이 있을까? 어떻게 나의 가치를 우리 팀이 필요로 하는 곳에 쓸 수 있을까? 솔선수범, 책임감 있게, 성실하게. 주변 동료 및 선배님들 도와주고, 도움 받았을 땐 감사표시 확실하게.
7. 속한 단체에서 나만의 go to 멘토 찾기.
8. 속한 팀과 전체적인 회사에 대해 이해하기. 어떤 팀, 어떤 회사인지.
9. 팀이 맡고 있는 프로젝트에 대해 이해하기. 어떤 분야를 담당하는지. 이게 왜 중요한지. 그리고 팀과 프로젝트에 관련된 문서들을 요청해서 받아보기. 이런 문서들을 읽으며 이해력 넓히기.
10. 제품을 이해하고 직접 써보기. 제품에서 쓰이는 단어 용어를 직접 익히기.
11. 프로젝트의 architecture 이해하기. 제품이 어떻게 architecture화 되어 프로젝트로 형성되어 있는지. 어떻게 패키지의 프로젝트와 모듈이 나뉘는지. 우리팀이 이 중 어떤 모듈, 어떤 패키지를 위주로 개발해나가고 있는지 등을 파악한다.
12. 사수 등에게 부탁해 내가 건드려도 되는 범위의 다양한 모듈의 이슈들을 받아서 해결하기.
13. 팀의 프로세스를 더 잘 이해하기
14. job description을 받아오기. 구인공고 등의 원하는 인재, 포지션을 문서화해서 갖고 있다가, 사수나 팀장에게 부탁해 다음 레벨로 갈 수 있는 job description도 받아온다. 나에게 회사가 기본적으로 요구하는 것, 앞으로 기대하는 것 등을 주기적으로 체크하며 잘 하고 있는지 점검용으로 쓰기. 다음 레벨의 description도 다음을 위해 뭘 해야하는지 참고용으로.
15. 긍정적 + 능동적으로 커뮤니케이션하기. 칭찬과 감사. 결론 먼저 -> 부가 설명하면서 커뮤니케이션.
16. IT 전반적인 큰 그림 배우기.
17. 큰 그림, 맥락 이해하기.
18. 연봉, 성장, 역량이 밸런스를 맞출 때 만족도가 올라간다. 연봉은 내 생활의 질을 경제적인 면에서 올려주고, 타인이 나를 볼 때 능력을 가늠하기에 좋다. 성장은 소프트스킬, 회사에 미치는 영향력 등이다. 역량은 실제 내 기술적인 능력. 이 셋의 밸런스가 잘 맞춰지고, 교차되는 부분이 넓어질 수록 만족도가 올라간다.
19. 공부는 T자로. 내가 원하는 것만 선택적으로, 내가 이걸 왜 공부하는지, 이걸 공부해서 얻고자 하는 것은 무엇인지 등을 명확하게 설정하고 공부하기. 내 분야에 대해 전문성을 쌓은 뒤, 커리어에 관련 된 연관 있는 것들을 점진적으로 늘려가는 것이 중요하다. 다양한 것을 아는데 초점 두기보다 전문분야 수행도 꾸준히 해서 밸런스 맞출 것.
20. 컴퓨터 공학 기본 지식, 자료구조 알고리즘, GIT과 같은 버전관리 툴, 좋은 설계를 위한 클린코드, 시스템 디자인은 항상 틈틈이 공부하기.
21. 막혔을 때 찾아갈 사이트 몇개 뚫어놓기.
22. DRY, KISS, YAGNI
23. 10년 이상의 장기적인 목표 세워두기.
매 프로젝트를 할 때마다 기억해 둘 것
1. 프로젝트의 모듈과 패키지, 클래스에 대한 다이어그램 그려보기
2. 이번 팀 돌아보기. 위기에 대해 어떻게 대처했나.
3. 일을 정말 잘 하는 사람은 어느팀에서 누구와 일을 하든 성과를 내고 목표를 공유할 줄 아는 사람.
4. 누구에게나 배울 점은 있다.