OMS ¶
방향을 모를 때 ¶
- 처음 경험해서 무엇부터 해야 할 지 모를 수도 있다.
- 사수가 있는 경우
- 사수의 존재는 독이 될 수도, 득이 될 수도 있다.
- 사수의 존재는 독이 될 수도, 득이 될 수도 있다.
- 사수가 없는 경우
- 경험이 없는 것의 장점을 살려보자.
- 그 분야를 경험해 본 사람들의 의견을 들어보자. (페이스북 생활 코딩, 블로그 등)
- 경험이 없는 것의 장점을 살려보자.
무언가를 하면서도 방향성에 대한 의심이 들 때 ¶
- 좋게 말하면 길을 찾는 중이고 나쁘게 말하면 삽질하는 중이다. (본인이 느끼기에)
- 과제, 현업을 기준으로 중간중간 check point가 필요할 때가 많다.
- 잠깐 멈추고 종이와 펜을 들고 순서 (설계)를 따라가자.
- 집착과 집중을 구분해야 할 필요가 올 때가 있다. 잘못된 길인걸 알면서도 계속해서 나아가는 것은 집착이고, 잘못된 것을 알고 고쳐나가는 것은 집중이다.
- 노력 대비 성능이 안 나올 때
일의 순서 시간에 대한 고민 ¶
- 과제의 경우는 deadline이 명확하게 정해져있고, 해야 할 일이 명확하다.
- 갖가지 과목의 난이도와 들이는 시간, 들이는 시간 대비 효율이 다르다.
- 본인 만의 priority queue가 필요하다.
과제의 난이도 별 ¶
- 제일 쉬운 과제 : 수업에 있는 내용의 예제 변형, 연습 문제 풀이
- bottleneck 발생 낮다.
- bottleneck 발생 낮다.
- 중간 난이도의 과제 : 수업 내용을 바탕으로 하는 프로젝트. 시간을 조금 들여야 하고, 특정 구간에 대한 bottleneck 발생 지점이 보인다.
- 어려운 과제 : 기존에 참조할 수 있는 레퍼런스가 적거나, 증명 또는 여러가지 방법을 시도해야 하는 경우. 또는 한 학기 동안의 프로젝트를 진행함에 따라 절대적인 시간이 필요한 경우.
어려운 과제에 대해서 ¶
- deadline이 먼저 시작해야 하는 기준이 될 수는 있지만 절대적이지 않다.
- 전반적으로 훑어보고 자기 자신에 대해서 시간 산정에 대한 우선순위를 매기려는 노력이 필요하다.
- bottleneck이 발생한 경우, 전반적으로 전체 프로젝트 중 bottleneck이 발생할 수 있는 구간이 있는데 이를 분할해야 한다. 즉 처음에 일을 받을 때 전반적인 구조를 그리고 모듈과 모듈을 연결할 수 있는 일을 먼저 한 다음, 각 bottleneck끼리 시간대와 일을 분리해서 진행한다.
- 하루에 못 끝내도 적어도 이를 연장할 수 있는 메모 같은 걸 남겨두는 것이 좋다.
현업에 대해서 ¶
- 현업에 가면 사이즈를 조금은 파악할 수 있다.
- 자신의 능력에 비해 1.5 ~ 2배의 시간을 요구한다. (2주치 분량이면 3주에서 3.5주 정도)
- 회사에서는 deadline을 조금 길게 잡는 것보다 deadline을 못 맞추는 게 일을 더 못한다고 생각한다.
- 현업에서는 약속 지키는 것이 가장 우선순위가 높다고 생각한다.
- 자신이 모르는 기술이나 생소한 분야에 대한 일이 주어지는 경우도 있다.
번아웃이 오는 경우 ¶
- 600쪽 짜리 스프링 책을 봤을 때 몇 페이지에서 책을 던지게 되는가?
- 너무 열심히 하는데 사람의 집중도는 그렇게 길지 않다. 한 번 흔들리게 되면 두 번째 흔들리는 주기는 더 짧아지게 될 것이다.
- 열정적으로 일하고 프로젝트를 끝냈는데, 에너지를 쓰고 시간을 쓰는 것 자체가 몸에 데미지를 주는 일이다.
- 노력을 본인이 많이 했다고 생각했는데, 뒤돌아보면 남는 게 별로 없어 보일 때.
어떻게? ¶
- 기본적으로 일과 쉼을 명확하게 해야 한다.
- 집에 갈 때 노트북/패드 챙겨가지 않는다. (또는 쉬어야 하는 시간에 일을 하면 그만큼 쉬는 시간을 더 주어야 한다.)
- 밤을 새는 것은 이틀 이상 불가능하다.
- 밤을 샌다 -> 시간이 갑자기 많아진 것처럼 느낀다 -> 몸이 지쳐있는데 머리 회전이 가장 명확하게 돌아가야 하는 소프트웨어를 과연 잘 짤 수 있나?
- 잘못된 코드 -> 수정에 대한 오버헤드 -> 밤은 새고 몸은 힘든데 결과가 안 좋다 -> 악순환의 반복이 발생한다.
- 나의 한계 시간이 어느 정도인지 본인만의 기준을 세워야 한다.
- 한계는 뛰어넘으라는 소리가 아니라, 일의 능률이 떨어지는 시점을 말한다.
- 밤을 새는 것을 일상화하면 안 된다. 주변 환경에 휩쓸리지 말고 본인의 기준을 정해야 한다.
- 첨언 - 정우현 학우님 : 밤을 샐 상황을 안 만드는 것이 좋다. 미리미리 일정을 잘 짜는 것이 중요하다. 일의 능률을 잘 조절하는 것이 좋은 것 같다.
실력에 대한 고민 ¶
- 2가지 경우가 있을 수 있다.
- 내가 아예 모르는 분야인데 내가 알아야 할 것 같은 분야
- 내가 알고 있는 분야인데 깊은 내용이다.
- 내가 아예 모르는 분야인데 내가 알아야 할 것 같은 분야
- 큰 내용이 아니더라도 작은 내용을 기록한다. 간단한 메모장, 과제 한 것, gist, 아이패드 필기, notion 메모 등을 조금씩 채워나간다.
- 새로운 것을 공부할 때 키워드 중심으로 공부했다. 키워드를 연결하기 위해 알게되는 사이의 연결하는 선에 대한 내용은 자연스럽게 학습할 수 있다.
그 외 기타 환경, 본인에 부담을 주는 것들의 집합 ¶
- 학부 또는 지금 배우는 것들은 얇고 넓다.
- 다 알아야 할 것 같지만 아예 정말 분야가 다른 분야도 있고 관련이 없을 수도 있다.
- 각 과목에 대한 태도나 키워드, 핵심 정도만 요약해서 해두자.
- 그 내용은 계속해서 반복되는 내용일 것이다. 자연스럽게 체화되는 내용도 많다.
실력 비교 ¶
- 1등이나 꼴등이 아니면 내 앞에 반드시 누군가 있고, 내 뒤에도 있기 마련이다.
- 모든 것을 다 할 수는 없다. 다 할 필요는 더더욱 없다.
- 컴퓨터공학에서 가장 힘든 부분은 과목 자체가 아니라 앞서 말한 이런 것들을 본인이 잘 못한다고 스스로 자책하고 자존감을 본인이 낮추는 부분이다.
- 화려하게 보인다고 모든 것을 다 아는 것은 아니다. 그 기술이 필요하지 않을 수도 있다.
- 학부에서 배우는 내용들을 잘 받아들이면 그 사이사이에 있는 것들로 생각했던 것보다 어렵지 않게 받아들일 수 있다.
- 첨언 - 정우현 학우님 : 밖에서 안 쓰일 것 같은 수학적 지식들도 결론적으로는 연결될 수 밖에 없는 개념이다. (선형대수학처럼) deep한 이론 분야들을 학부에서 많이 공부해두는 것이 이득이 되지 않을까라는 생각이 든다.