우아한 테크코스 후기 & 성장점

노지환·2021년 1월 8일
0

🎆 결과는....?

두구두구두구두구두굳구구...

사진의 말처럼 아쉽게도 합격하지 못했다ㅠㅠ.

📢 후기

무언가를 보여주기에는 충분한 시간이라고 생각하는 3주가 프리코스를 통해 진행되었다.
프리코스 중에 다른 참가자들의 코드를 확인하면서 내가 부족한 부분을 찾아 매주 성장하고 있다고 생각했고, '대단한 사람들이 많구나!' 라는 것을 느꼈다.

하지만, 이 과정은 참가자들 중에서도 과정을 함께할 사람을 선별하기 위한 과정이라는 걸 잠시 까먹고 지낸 것 같다. 이게 내가 떨어진 요인이 아닐까...싶다.

마지막으로, 과정을 통하여 '우아한 형제들' 은 참 따뜻한 선별자라고 생각했다ㅋㅋ. 참가자를 선별하는 과정 중에서도 선별되지 못한 사람들을 위해 더 성장할 수 있는 방법을 제시하는 회사가 몇이나 있을까? 이런 과정을 많이 지원해보지 않았지만 그래도 몇 없는 고마운 회사라고 생각한다. 이제 이를 통하여 더 나은 개발자가 되기 위해 노력해나가려고 한다.(3학년을 곱게 갈아 나의 성장 원동력으로 써서 다시 지원해봐야지!)

🎯 성장할 부분

다음에 이러한 쓰디쓴 고배를 마시지 않으려면 어떠한 점을 보충하고, 성장해야할까?
이를 세가지로 추려보았다.

1. 클린코드(clean code)

깨끗한 코드는 단순하고 직접적이다. 깨끗한 코드는 잘 쓴 문장처럼 읽힌다. -그래디 부치(Grady Booch)

이 분이 말한 문장은 매우 가슴에 와닿았지만, 내 코드를 읽어보니 전혀 잘 읽히지 않았다(ㅠㅠ).

첫번째 취약점인 클린코드는 프리코스 내내 강조되었던 클린코드에 대한 부분이다. 단순하지만, 매우매우매우매우 생각이 많아지기 때문에 어렵다고 생각한다. 하지만 좋은 코드를 짜기위한 가장 중요한 요소인건 확실하다. 여기에는 몇가지 규칙들이 있는데, 이는 개발 미션과 함께 읽는 클린 코드 <- 요기를 참고하면 큰 도움이 될 것 같다!

현재의 나는 클린코드 책을 사서 읽는 중이다. 그리고 계속해서 적용해보려고 한다. 이 시행착오는 github에서 계속 업데이트할 예정이다.

2. 코드를 짜기 전, 계획

프리코스의 마지막에는 온라인 코딩테스트를 진행한다. 정해진 시간동안 주어진 요구사항을 완수하는 것이 목표인데, 여기서 나는 나의 한계를 느꼈다. 코드를 짜기 전에 짜임새있는 계획을 세우는 것이 우선이라고 '생각만' 앞섰다. 돌아보니 나의 계획은 너무 엉성하다고 생각한다. 적어도 나는 객체화, 캡슐화 모두 코드를 짜면서 진행하는 게 안된다. 된다하더라도 너무 좋지않은(클린하지않은) 코드를 짜버린다. 이는 결국에는 생산성을 저하시키는 작업이라고 생각한다.

그렇다면 무엇을 어떻게 고쳐야할까?

0. 요구사항에 맞는 기능을 적어본다.
1. 기능에 필요한 data들을 계획한다.
2. data를 처리할 일급컬렉션을 계획한다.
3. 시작-.

한번 더 말하지만, 말은 쉽다. 말이 쉬운 것처럼 행동이 잘되면 얼마나 좋을까?
계속해서 계획을 하고 진행하며 방법도 개선해나가야겠다.

3. TDD(Test-driven development)

솔직히 나는 TDD를 잘 모른다. 프리코스동안 공부는 해봤지만, 겉핥기 식으로 적용해본 게 다다.

하지만, 코드를 테스트하고 넘어가는 것이 프로그램의 오류와 빈틈을 최소화할 수 있는 길이라고 생각한다. 그렇다면 TDD를 진행하는 방식은 무엇일까? 나는 프리코스 과정에서 오류를 출력하는 부분에서만 TDD를 진행하려고 하였다. 하지만 살펴보니, 처음 함수를 만들 때부터 사용하여 발생한 오류를 고쳐나가는 식으로 하는 것 같아서, TDD에 대해서는 조금 더 공부한 후에 나의 취약점을 메꿔가는 프로젝트를 진행하려고 한다.

끝으로

난 이 프리코스가 재밌었다. 마지막에 합격까지 했다면 정말 완벽한 2020년이 되었을 거라고 생각하지만, 항상 생각대로 되지 않는다는 것과 이번에도 기회가 왔는데도 아직 잡을만한 실력이 안된다고 생각했다. 여전히 부족하다는 말이다. 더 나은 프로그래머가 되기 위해 노력해야겠다.

profile
기초가 단단한 프로그래머 -ing

0개의 댓글