『클린코드』공부하면 생기는 일
제로베이스 수강후기 | 4주차 신입 개발자가, 『클린코드』공부하면 생기는 일
사진=제로베이스 한달한권 클린코드 수강생 홍서연님
-
‘개발자의 바이블’ 클린코드는, 방대한 분량만큼이나 어려운 내용으로 가득한데요. 4주차 신입 백엔드 개발자 홍서연님이 클린코드 완독에 도전하게 된 계기는 무엇일까요? 서연님이 ‘한달한권-클린코드’ 강의를 수강하면서 겪은 변화를 아래에서 만나보세요.
| 🙋♀️국비지원 수료 후 취업,
깔끔한 코드에 대한 아쉬움이 많았어요.
Q. 안녕하세요 서연님. 자기소개 부탁드립니다.
안녕하세요. 저는 축산식품생명공학과 졸업 후, 개발자가 되기 위해서 국비지원 과정을 이수했습니다. 현재는 의료 업체에서 백엔드 개발자로 근무하고 있습니다. 일을 시작한 지 4주차 된 신입 개발자입니다.
Q. 백엔드 개발자로 취업 과정은 어떠셨나요?
대학교 졸업 후, ‘빅데이터 분석과정 및 자바 웹 개발’이라는 프로그램을 이수했어요. 6개월은, 자바만 배운다고 해도 짧은 기간이 아니에요. 그런데, 6개월 간 자바뿐만 아니라 파이썬, 빅데이터 하둡 시스템도 배워야 했기 때문에 프로그래밍 언어를 하나만 깊이 있게 학습하지 못했어요.
실제로 과정 중에 가장 많이 들었던 말이 “일단 쓰고 이해해”라는 말이었어요. 코딩 원리를 심도 있게 공부하지 못했고, 코딩 동작부터 시작해야 했어요. 운 좋게 취업을 하고 나서도, 실무에서 코드를 수정하거나, 다른 기능을 추가 할 때 깔끔한 코드 작성에 대한 아쉬움이 있는 상태였습니다.
| 창발성, 응집도, 밀집도 … 『클린코드』 속 추상적인 개념,
북리더님 설명이 없었다면?
한달한권-클린코드 강의 수강 중인 홍서연님
Q. 『클린코드』라는 책을 읽어야겠다는 결심이 들었던 순간이 있다면요?
국비지원 과정을 이수하고, 최신 기술 스택, 코드의 동작 원리에 대한 이해가 부족한 점이 아쉬웠어요. 그래서 외부 유료 기관을 통해 카카오 멘토님과 자바스프링 공부를 시작했습니다. 당시 멘토 분께서 리팩토링 필수 서적을 여러 권 추천해주셨어요. 그 중 하나가 『클린코드』라는 책이었습니다.
『클린코드』라는 책이 2014년도에 발간되었는데도 현재까지도 개발자들이 찾아서 읽는 개발계의 ‘교과서 같은 책’이라고 추천을 받았습니다. 그 말을 듣고, 『클린코드』를 꼭 읽어야겠다는 결심을 했습니다.
Q. 『클린코드』를 혼자 읽으면서 어려웠던 점은요?
책을 읽으면서, 추상적인 의미가 있는 단어들을 많이 접하게 되었어요.
『클린코드』12장에 있는 ‘창발성’이라는 단어나, ‘밀집도’, ‘응집도’와 같은 단어들은 직접적으로 프로그래밍이랑 어떤 연관이 있는지 와닿지 않는 경우가 많았어요.
Q. 강의를 듣고나서 그 문제가 어떻게 해결되었을까요?
‘한달한권’ 강의는 각 챕터별로 북리더님께서 클린코드의 목차에 있는 어려운 용어들을 예시 코드와 함께 설명해주셨어요. 덕분에 ‘창발성’, ‘밀집도’, ‘응집도’ 같은 추상적인 단어들이 이해가 가기 시작했어요.
이 단어들이 내가 만든 코드랑 어떤 관련이 있는지 알게 되면서 『클린코드』라는 책이 전보다 재미 있게 느껴졌습니다.
| AOP, 코드 네이밍.. 북리더님께 배운 내용,
실무에서 빠르게 적용해 보고 싶습니다.
출처: 클린코드, 로버트 C. 마틴 『클린코드』中
Q. ‘한달한권-클린코드’ 내용 중, 실무에 적용하고 싶은 내용이 있을까요?
『클린코드』 12장 ‘창발성’ 챕터
중, AOP 관점에서 코드를 작성하는 방법에 대한 내용이 있었어요. 사실 개발자로 취업하고 나서 토이 프로젝트를 진행하면서도, AOP 관점에서 프로그래밍을 하는 방법을 이해하지 못했습니다.
‘한달한권’ 북리더님의 추가 예제를 통해서 AOP 관점에서 코드 작성법을 알게 된 후, 토이 프로젝트 뿐만 아니라 실무에서도 직접 적용하고 싶다는 생각이 들었습니다.
Q. 그 외에도 적용해보고 싶은 개념이 있다면요?
『클린코드』 2장, ‘의미 있는 이름’ 부분에서 ‘코드 네이밍’에 대한 내용을 적용해보고 싶어요.
책을 혼자 읽으면서는 “개발자의 90%가 파일 이름 짓는 데 많은 시간을 쓴다.”는 부분이 크게 와닿지 않았습니다.
그런데, 북리더님의 예제 코드를 보면서 코드 네이밍을 할 때 어떤 단어는 사용하면 안 되고, 어떤 형식으로 제목을 지어야 하는지를 알게 되었습니다.
이후 저희 회사 소스코드에 활용하고, 개발자 동기들에게 알려서 팀 컨벤션을 올려야겠다는 결심을 하게 되었습니다.
| 한달한권에서 읽으면 공부할 내용의 우선순위를 정할 수 있어요!
#최신 기술 스택 #깔끔한 코드 #한달한권 스케줄표
Q, ‘한달한권-클린코드’ 강의 내용 중, 추가적으로 좋았던 점은요?
북리더님께서 프로그래밍에 대한 최신동향을 짚어주시는 지점도 좋았습니다.
개발자는, 최신 기술 스택을 활용할 줄 아는 능력이 중요하지만, 비전공자이다 보니까 최신 기술 스택 정보를 어디서 얻어야 하는지를 잘 모르는 상태였습니다. 그런데, 북리더님께서 최신 기술 스택을 알려주셔서 관련 지식을 올릴 수 있었습니다.
뿐만 아니라, 책에 있는 내용 중에서 최근까지도 실무에서 많이 활용되는 코드와, 그렇지 않은 코드를 확실하게 구분해서 설명해주신 점도 좋았습니다.
책에 있는 내용을 전부 이해할 필요 없이 공부해야 할 것들 중에서도 우선순위를 정하고 공부할 수 있었습니다.
😉서연님의 독서과정
Q, ‘한달한권’ 수강 후, 실무에서 코드가 깔끔해졌다는 것을 체감한 계기가 있을까요?
강의를 수강하기 전, 제가 작성했던 코드를 우연히 보게 되었습니다. 코드 네이밍, 구조 등에서 문제점과, 문제 해결법이 보였습니다. 한달한권 수강 후, ‘깔끔한 코드’가 무엇인지 볼 수 있는 시야가 생겼다는 것을 체감할 수 있었습니다.
Q, 한달한권에 있는 스케줄표는 완독에 얼마나 큰 도움이 되었을까요?
처음에 책이 배달되서 도착했을 때, 분량이 두꺼워서 완독할 자신이 없었습니다. ‘한달한권’ 계획표를 보고 나니까, 시작한 날짜에 맞춰서 정해진 분량만큼 읽으면 한 달 안에 책을 모두 읽을 수 있겠다는 자신감이 들었습니다.
‘계획표’가 있다는 사실만으로도 두꺼운 책을 읽는 것에 대한 두려운 감정이 줄어들었습니다.
| 🙋♀️저와 같은 비전공자 출신 신입 개발자 분들께 추천합니다.
#개발 용어 #리팩터링 공부
서연님의 한달한권-클린코드 수강화면
Q. ‘한달한권-클린코드’ 강의를 추천하고 싶은 사람이 있나요?
개발 용어에 대해서 깊게 이해하고 싶으신 비전공자 출신 신입 개발자 분들께 추천 드리고 싶습니다. 한달한권-클린코드 강의를 수강하면 북리더님의 예제코드와 풍부한 설명을 들으면서 개발 용어에 대한 풍부한 이해를 하실 수 있어요.
그렇기 때문에 코드리뷰 혹은 개발 업무에 참여할 때 적극적으로 대화에 참여하실 수 있습니다. 나아가 리팩터링에 대한 공부도 할 수 있어서 개발자로서 커리어를 쌓아가는데 큰 도움이 될 것이라고 생각합니다.