개발자 노트

2020.07.13 악! 본문

회고

2020.07.13 악!

jurogrammer 2020. 7. 14. 00:11

근황

근 삼주간 정신없는 나날을 보냈습니다. 사실 인턴을 합격했거든요 ㅎㅎ 근 7개월간 독학으로 공부했던 저에겐 더할나위 없는 기회였습니다. 그래서 일한지 약 10일 밖에 되지 않았지만 보고 느낀 것을 키워드만 적어보려고 합니다.(*상세히 다 적기엔 보안 문제도 있고 시간이 부족하네요 ㅎㅎ;*)

흐음... 그래서 경험을 전하려고 쓰는 글이지만 제대로 전달할 수 없는 글이 되겠습니다. 너무 뻔한 이야기만 늘여놓을 것 같네요...

정리

1. 오래한 것(노력)이 중요한 게 아니라 잘 하는 것이 중요하다.

이 말의 요지는 결국 시간관리 능력입니다. 정해진 시간 내에 효율적으로 업무를 마칠 수 있냐이지요. 여기와서 뼈저리 느낍니다. 분명히 이것저것 많이 한 것 같은데 별로 한 것이 없고, 시간은 많이 흘러있네요.

**시간은 한정된 자원이다.**

잠을 줄이면서까지 해봤는데도 역부족입니다. 아무리 열정이 넘치더라도 몸이 피곤해지면 집중력이 흐려집니다. 그래서 또 투자하는 시간이 늘어나버리죠.

그래서 잘 해보려고 합니다. 그래서 이전에 계속 작성했던 [프로젝트와 효율성]의 주제에 대해 계속하여 고민하는 시간을 가져볼 것입니다.

2. 과도한 열정은 오히려 독

열정 좋습니다. 무언가에 몰입하여 집중하는 마음. 하지만 이것이 오히려 문제가 될 때가 있습니다. 감정이 앞서다보면 주변을 보지 못하고, 주변을 보지 못하니 이해할 수 없는 일, 통제할 수 없는 일들이 일어나기 시작합니다.

지난 한 주를 돌아보았습니다... 과해서 주변 사람들이 불편해지고 제 몸과 마음도 지쳤던 것 같습니다. 그래서 열정은 잠시 누르고 제 몸과 주변을 신경써가며 살아가기로 마음먹었습니다. 인생은 마라톤이잖아요.

3.인증과 보안

인증과 보안은 어디서나 따라오는 문제같습니다. 이 부분이 매우 약하기 때문에 시간내어 틈틈히 공부해야겠습니다.

4.설계

개발에 밀접하게 관련된 고민은 설계입니다. 개발하기 위한 요구사항을 어떻게 프로그램을 만들어야 가장 좋을까요? OOP를 예로 들면 4대 원칙을 따른다한들, 귀납적사고의 영역같습니다.

다른 사람들이 기존에 잘 설계 해놓은 것들을 참고하는 것이 여태까지는 가장 좋은 방법같습니다.

물론 중요한 원칙을 어떻게 녹였는지도 같이 살펴봐야죠.

5.Agile

매일 낮에 모여 자신이 한 일을 간단히 보고하고 토의해보는 시간은 문화충격이였습니다. 그리고 시간이 지나니 정말 좋은 개발문화같습니다. 어떻게 잘 진행되는지 얘기를 해보며 사전에 엇나가지 않도록 차단할 수 있는 역할이 큰 것 같습니다.

그리고 개발 측면에서는 **확장성**을 둔 채, 재빨리 프로토타입을 개발하는 것도 중요하구요.

6.독학경험

독학에서 쌓은 경험이 실무에서 도움이 꽤 됩니다. 아무래도 기본기 및 기술에 대해서는 스스로 학습할 줄 알아야 합니다. 이런 면에서 어떻게 지식을 습득할 것인가?에 대한 고민들이 여기서도 큰 도움이 되고 있습니다. (자료가 부족한 Ruby On Rails를 공부하고 있거든요..)

7.협업

크! 너무 좋습니다. 개발에서 매우 중요하다는 협업을 드디어 해볼 수 있게 됬으니까요. 개인 개발과 달리 신경쓸 일이 생기긴 했지만 더 얻는 것이 많은 것 같습니다. 또한 협업에 좋은 태도를 기를 수 있는 기회를 얻어서 기쁩니다.

8. 시니어 개발자분들의 특징

당연한 소리일지 몰라도, 시니어 개발자분들은 본인이 하고 있는 일에 대해 명확히 아십니다. 왜 이것을 하고 있는지, 어떤 과정에 있는지를요.

저는 아직 왜 이렇게 했냐하면 대답을 잘 못하겠습니다... 제 자신을 설득할 수 있는 이유를 찾기 위해 몇시간동안 문서를 읽어 근거를 찾아보려고 합니다.

소크라테스가 생각나는 주제입니다.

9. 문제는 우리가 통제할 수 없는 상코황에서 발생한다.

뭐 너무 뻔한 말이면서도 일상에서는 단지 운이없었다는 말로 지나치는 말입니다. 리스크를 관리할 수 있는 능력. 이것이 좋은 개발자로 성장하기 위한 능력같습니다. 실무에서 보니 확 느껴지네요.

10. encapsulation

왜 중요한지 좀 더 공감하였습니다. 단순하게 표현해보려 한다면 인터넷상에 떠도는 뻔하디 뻔한 말을 사용할 수 밖에 없겠네요. (이를 자세히 설명하기엔 졸립네요 ㅎㅎ;)

  1. 내부 로직을 숨겨서 사용하는 사람이 원하는 것만 볼 수 있습니다.

    • 여기서 것이라고 표현한 이유는 객체뿐만이 아니라 서버같은 모든 개념에 적용됩니다!!!

    • 이러한 input을 넘기면 정해진 output을 기대할 수 있으므로 재사용 측면에서도 유리합니다.

  2. 내부 로직을 숨겨서 의도치 않은 사용을 막을 수 있습니다.

    • 사용하리라 생각되는 기능만을 바탕으로 내부 로직 수정에 들어갑니다. 그런데 내부 로직을 이용하여 코드를 썻다면? 버그가 발생해버리는 것이죠 ㅠ

...

아주 짧은 지난 10일간, 독학해서는 얻을 수 없는 경험을 하였습니다. 또한 제가 개발 또는 컴퓨터를 정말 좋아한다는 것을 알겠습니다.

컴퓨터가 어떻게 동작하는지, 특정 기술이 동작하는 방식에 대해 궁금하고, 어떻게 설계해야 할 것이고... 등등 즐거운 고민거리입니다. 또한 이전 직장에서는 집까지 1시간 30분이였는데 매일 죽을 맛이였던 반면, 지금은 1시간 50분이 걸릴 때도 있지만 적당히 힘드네요. 하고 싶은 일을 하러가고, 그 일을 끝마치고 돌아간다는 느낌 때문인 것 같습니다.

아직은 잘하는 개발자, 좋은 개발자를 잘 설명하진 못하겠습니다. 하지만 이에 대해 고민하고 그 방향으로 따라가보겠습니다. 아자아자~

반응형

'회고' 카테고리의 다른 글

2022.06.16 기록  (0) 2022.06.16
2020.07.22 협업(feat: git-flow)  (0) 2020.07.22
Comments