이 글은 8 Meta-learning Tips To Grow Your Skills as a Software Engineer 칼럼을 읽고 정리한 글입니다.

8가지 중 6가지의 토픽에 공감하여 6가지의 내용만 요약하였으며, 글 전체를 읽어보실 분들은 아래 링크를 참고하시길 바랍니다.

 

https://betterprogramming.pub/how-to-learn-learn-faster-and-even-faster-792f29586ea

 

8 Meta-learning Tips To Grow Your Skills as a Software Engineer

How to find opportunities and maximize gain

betterprogramming.pub

 


1. Turn Passive Learning Into Fantasy Making

내가 공부하려는 도구/라이브러리/프레임워크의 제작자인척하며 질의응답을 진행해 지식을 확장시키는 방법입니다.

 

Email SPF에 대해 공부한다고 예시를 들어봅시다.

예시

Q: Email 을 발송할 때 내가 보냈음을 서로 알 수 있는 방법이 있을까?

A: 그럴거면 발신 SMTP와 수신 SMTP가 서로 도메인에 대한 정보를 알고 있어야 할 것 같아.

Q: 그럼 어떤 방식으로 서로 도메인에 대한 정보를 알 수 있을까?

A: 음... 통신 표준이 있을거 같은데... 잠시만 어  RFC 4408에 Sender Policy Framework에 대한 설명이 자세히 적혀 있네 한 번 읽어보고 적용해볼까? 보니까 도메인에 SPF 레코드를 추가할 수가 있네! 여기에 SPF 레코드를 작성하면 될 것 같아.

Q: SPF 레코드는 어떻게 작성해야 돼?

A: gmail 가이드를 보니까 SPF 레코드에 대한 설명이 다루어져 있는 것 같아. v=spf1 include:_spf.google.com ~all와 같이 spf 레코드 정보에 대한 설명이 있는데 좀 더 자세히 알아볼까?

Q: 응. 그런데 SPF 정보가 너무 많으면 그것도 문제 아니야? 예를들면 100만개를 등록했다고 치자. 그럼 이거 호출할때마다 읽는거야?

A: 그런걸 방지하기 위해서 SPF 레코드는 최대 10번의 SPF check를 진행한다고 추가 제약사항이 있네. 근데 이건 프로토콜이라 실제로는 체크를 할 수도, 안할수도 있을 것 같아. 우리는 표준을 지키자

 

2. Never Skip the Fundamentals When Touching a New Domain 

https://betterprogramming.pub/how-to-learn-learn-faster-and-even-faster-792f29586ea

 

기본 요소들을 먼저 파악하면 변화하는 모든 것에 쉽게 적응할 수 있습니다. 새로운 것을 배우기 이전에 어떤 것을 기반으로 하는지 파악하고 이를 공부하는 것을 추천드립니다.

 

3. One Tough Real-World Problem Is Worth 1000 Tutorials

하나의 복잡한 실제 문제를 해결하는 과정에서 개발자는 도메인 지식, 디자인 기술, 코딩 실력, 디버깅 기술 등 여러 측면에서 동시에 상당한 향상을 할 수 있습니다.

 

하나의 어려운 문제는 이상하고 복잡하기 때문에 해결하기 위해서는 문제에 대한 관련 지식의 본질을 파악하고 이를 해결해 나가는 과정에서 모든 부분을 성장시킬 수 있습니다.

 

4. Opportunities in Different Environments: Big vs. Small

대기업과 스타트업에서의 개발 방식은 크게 상이합니다. 많은 사람들이 대기업에 가고싶어 하지만 스타트업에서만 경험할 수 있는 요소들이 존재합니다. 보다 균형 잡힌 성장을 위해서는 큰 프로젝트와 작은 프로젝트 둘 다 경험해가며 성장하는 것이 스스로의 단점을 극복하는 좋은 방법이라고 생각합니다.

 

5. Leverage Corner Opportunities to Expand Your Knowledge Scope

https://betterprogramming.pub/how-to-learn-learn-faster-and-even-faster-792f29586ea

실제 업무에서 우리는 대체적으로 유지 보수 업무를 진행합니다. 직장에서 새로운 기술을 시도하고 싶어도 시간적 여유가 없어 진행하지 못하는 경험을 하셨을 것이라 생각합니다. 

 

조금만 부지런해져 새로운 기술을 연습할 코너 기회를 찾아보세요. 업무가 아닌 곳에서 시도해보는 경험을 하는걸 추천드립니다. 대표적인 방법으로는 오픈 소스 시스템에 기여하는 것이 있습니다.

 

6. You Ought to Love What You Do (가장 핵심!)

마지막으로는 당신이 사랑하는 일을 해야 합니다. 

 

 

이 글을 작성하게 된 이유

열정을 가지고 개발자로서 성장하기 위해 많은 노력들을 하고 있지만 떄로는 내가 가는 길이 올바른 방향인지 고민할 때가 있습니다. 이 글을 읽고 아직 내가 가는 길이 올바르구나라는 생각이 되어 다시 다짐하는 의미에서 작성하였습니다.

 

1~5번 내용도 물론 중요하지만, 이 열정을 오랫동안 유지하면서 사랑하는 일을 꾸준히 해야겠다고 다시 한 번 다짐하게 되었습니다. 

 

나머지 내용들은 지금도 공부를 하면서 진행하고 있다고 생각하지만 1,5는 아직 경험해보지 못한 내용들이라 무언가를 공부할 때 좀 더 제작자인척 생각해보는 시간을 가져보고 OSS에도 기여해보도록 노력해보고자 합니다.

 

이 글을 읽는 다른 개발자 분들도 함께 노력해 보다 더 성숙한 개발자가 됐으면 좋겠습니다.

 

감사합니다. 

+ Recent posts