평범한 개발자는 비웃지만 10x개발자는 꼭하는 3가지 습관
Summary
TLDRIn this insightful talk, the speaker, Coding Shrimp, delves into the concept of 10x developers, emphasizing their ability to select impactful tasks and prioritize smartly. The speaker shares personal experiences and highlights three key traits of 10x developers: choosing high-impact work, continuously seeking 1% improvements to increase productivity, and identifying their optimal working hours to maximize concentration and efficiency. The talk encourages viewers to reflect on their work habits and strive for smarter, not harder, work practices.
Takeaways
- 😀 The concept of '10x developers' varies among people and has a history dating back to 1968, challenging the notion that more experienced developers always produce better results.
- 🤔 The importance of choosing impactful work is highlighted as a common trait of 10x developers, emphasizing the need to select tasks that will have a significant effect on business outcomes.
- 🛠️ Refactoring code for a test page, despite its seemingly lower impact, can lead to significant improvements in code quality and test coverage, as demonstrated by the speaker's experience at Coupang.
- 🕒 The speaker suggests that investing time in refactoring can save time in the future, especially when it leads to cleaner, more understandable code that can be quickly applied in larger projects.
- 💡 The idea that 10x developers are often 'lazy' in a productive sense is introduced, meaning they seek ways to make their work and life more efficient through continuous improvement.
- ❓ The script encourages asking questions to identify areas for improvement, such as reducing overall workload, identifying bottlenecks, and automating repetitive tasks.
- 📝 The practice of documenting frequently asked questions and domain-specific information in a wiki is presented as a way to streamline communication and knowledge sharing.
- 🕗 The significance of finding and utilizing one's most productive time of the day is discussed, with the speaker sharing their personal strategy of focusing on deep work during their peak hours.
- 🏅 The final takeaway emphasizes the importance of prioritizing high-impact tasks, continuously seeking 1% improvements, and identifying one's optimal working hours for maximum productivity.
Q & A
What is the main theme discussed in the video?
-The main theme of the video is the characteristics and strategies of 10x developers, focusing on their productivity and impact.
How does the speaker describe the approach of different developers towards their work?
-The speaker describes that some developers strive to contribute significantly (으쌰으쌰), while others aim to minimize their own work.
What historical reference is made to highlight the concept of productivity?
-The speaker references Archimedes, who said, 'Give me a lever long enough and a fulcrum on which to place it, and I shall move the world,' to emphasize the importance of choosing impactful tasks.
What is a common characteristic of 10x developers according to the speaker?
-A common characteristic of 10x developers is their ability to select tasks that have the greatest impact.
Why does the speaker mention a project at Coupang?
-The speaker mentions a project at Coupang to illustrate the importance of refactoring code for long-term benefits, even if it initially seems less efficient.
What advice does the speaker give regarding refactoring?
-The speaker advises that refactoring should be done to reduce future development costs and improve code readability and maintainability, especially if the code is frequently modified.
How does the speaker suggest developers should approach their work to improve productivity?
-The speaker suggests finding ways to improve by 1% each day, identifying and eliminating bottlenecks, and automating repetitive tasks.
What is one practical example given by the speaker for improving workflow?
-One practical example is creating a wiki document to address frequently asked questions, which helps maintain focus and efficiency.
How does the speaker recommend developers manage their optimal working time?
-The speaker recommends identifying and utilizing personal peak productivity times for focused work and scheduling less demanding tasks for other times.
What are the three main takeaways from the video?
-The three main takeaways are: (1) choosing tasks with the highest business impact, (2) seeking continuous small improvements, and (3) finding and utilizing one's optimal working time.
Outlines
😀 Prioritizing Impactful Work for 10x Developer Productivity
The speaker, Coding Shrimp, discusses the concept of 10x developers, emphasizing that productivity in a developer's role is not solely about working harder but smarter. The talk references a 1968 journal article comparing online and offline programming performance, suggesting that experience does not always equate to tenfold results. The speaker introduces three characteristics of 10x developers: choosing impactful tasks, leveraging the right tools, and understanding that not all developer tasks have the same business impact. An example is given about refactoring code for a test page, which, despite being for internal use, had a significant impact when applied to a main project, saving time and improving code quality. The speaker concludes that refactoring is essential for economic reasons, as it prevents mistakes and slows development pace due to complex code.
😉 Embracing Laziness and Finding Optimal Times for Peak Productivity
In the second paragraph, the focus shifts to the idea that 10x developers are often smart and lazy, always seeking ways to improve their work and life by 1%. The speaker shares questions that 10x developers ask themselves to identify areas for improvement and reduce manual effort. An example of the speaker's own practice of creating a wiki to document frequently asked questions is provided, which helps maintain workflow continuity and reduces the time needed for future modifications. The speaker also emphasizes the importance of finding one's optimal time for concentration, like early mornings for themselves, to maximize productivity. The summary concludes with the key points: prioritizing tasks with high business impact, constantly seeking small improvements, and identifying personal peak productivity times.
Mindmap
Keywords
💡10x Developer
💡Refactoring
💡Impact
💡Productivity
💡Efficiency
💡Code Quality
💡Professionalism
💡Economic Value
💡Investment
💡Optimal Time
💡Workflow
Highlights
Introduction to the topic of 10x developers.
Difference between people who work collaboratively and those who focus on minimizing their own workload.
Challenges in maintaining productivity in difficult environments.
Importance of continuing daily tasks to discover and achieve unexpected results.
Three additional characteristics of 10x developers based on personal experience.
Definition of 10x developers varies among different people.
Historical context of the term '10x developer' dating back to 1968.
Key finding from a 1968 journal: experience doesn't necessarily correlate with tenfold productivity.
Impactful work selection as a common trait among 10x developers.
Example of selecting impactful tasks: creating a test page while considering code quality.
Personal experience at Coupang involving refactoring code for a test page.
Balancing immediate productivity with long-term efficiency through refactoring.
Martin Fowler's view on refactoring for economic reasons.
Distinguishing when refactoring is necessary based on future maintenance costs.
Andrei Neagoie's perspective on 10x developers being productive because they seek to simplify their work.
Examples of questions 10x developers ask to improve efficiency.
Creating a wiki document to reduce repetitive questions and maintain flow during work.
Importance of finding and optimizing one's most productive time of day.
Murakami Haruki's emphasis on concentration as a critical trait for novelists.
Personal strategy of focusing on productive work hours early in the morning.
Summary of the three main points: choosing impactful tasks, finding small improvements, and optimizing productive hours.
Closing remarks and gratitude for viewers.
Transcripts
안녕하세요 코딩 새우입니다 지난
시간에요 태스 개발자에 대한 이야기를
하고자 합니다 이야기하다 보면 같이
으쌰으쌰 하시는 분들도 있는 반면에
어떤 분들은 자기를 적게 하는 걸
목표로 하시는 분들이 있습니다
전쟁에서 승리하기 위해 포 각도 좀
조절하자 한 것뿐인데 전쟁이고
나발이고 그냥 바꾸는게 어렵다고만
하는 거죠 이러면 있던 열정도 사가라
듭니다 사실 이런 환경에서 생산성을
올리는 것은 쉽지 않은데요 하지만 별
의미를 안 두고 계속 매일매일 해야
할 일을 하다 보면 내가 가 몰랐던
것들을 발견하고 이루게 될 때도
있습니다 오늘은 10x 개발자의 또
다른 특징 세 가지를 개인적인 경험과
함께 소개해 드리고자 합니다 텐엑스
개발자의 정의는 사실 이야기하는
사람마다 다릅니다 역사도
오래되었는데요 1968년도 아지
올라갑니다 한 저널에서 글리 하나
소개되었죠 제목은 온라인 및 오프라인
프로그래밍 성능 비교에 관한 탐색적
실험 연구입니다 한마디로 말해서
프로그래머의 성능 비교 결과라는 거죠
글의 결론은 개발 경험이 오래되었다고
해서 꼭 열배의 결과를내는 것은
아니라는 겁니다 고대 그리스의
물리학자 아르키메데스가 이런 말을
했죠 충분히 긴 지렛대와 그것을 바칠
지렛 목을 주면 지구를 움직일 수
있다 개발자가 하는 모든 일들이 실제
비즈니스에 똑같은 영향을 주지는
않습니다 들어가는 대비 나오는 결과가
달라질 수 있다는 것이죠 그래서
10x 개발자의 공통적인 특징 하나는
가장 임팩트가 큰 업무를 고르는
것입니다 같은 지렛대 일을 때 더 큰
일을 고른다 그가 아니면 같은 일인데
더 긴 지렛 때 또는 지렛목 을
어디다 둘 건지 고르는 거죠 실제
예를 들어 볼까요 개발자만
테스트용으로 쓰는 페이지를 하나
만들어야 합니다이 업무는 일단 자주
들어오는 요청을 처리해 줄 수 있죠
하지만 같이 일하는 운영자분들 또는
연관 부서 합쳐 네명 정도가 사용할
예정입니다 그런데 기존 코드가
엉망이죠 테스트용 페이지를 만들기
위해서는 엉망인 코드를 그대로
복붙하는 방법과 기존 코드도 리팩토링
하고 만드는 방법이 있습니다 그런데
우리 일이 이것만 있지 않죠 이미
외부 사용자를 위한 프로젝트도 진행
중입니다 아마 최소 몇 만 명 이상
방문할 것으로 생각됩니다 이럴 때
대부분은 사용자를 위해 테스트용
페이지는 복부로 마무리합니다 왜냐하면
후자가 임팩트가 크기 때문이죠 실제로
쿠팡에서 일할 때 비슷한 경험이
있었습니다 그때 테스트용 페이지에
사용되던 코드들을 리팩토링 했죠
일주일에 두 시간씩 점진적으로 테스트
코드를 추가하고 역할별로 나눴습니다
결과적으로는 테스트 커버리지 90%
읽기 좋은 코드가 완성되었죠 테스트
용이기 했지만 사실상 메인로 었기
때문에 서비스를 갈아엎는 프로젝트가
생겼을 때 제 코드를 바로 적용해서
시간을 단축할 수 있었습니다 하지만
총 걸린 시간을 합해 보니 3일 정도
걸렸더라구요 기존에이 테스트 페이지를
만든 분은 하루 만에 개발하셨다고
합니다 만약 가라 없는 프로젝트가
없었다면 저는 임팩트가 적은 일에
이틀을 낭비한 셈이 되는 겁니다
여러분들은 리팩토링을 왜 하시나요
코드 퀄리티를 위해서 클린한 코드를
위해서 프로페셔널리즘 실제로 리팩토링
책의 저자 마틴 파울러는 는
2014년 oop 컨퍼런스에서
리팩토링을 하는 진짜 이유에 대해서
이렇게 말했죠 이코노믹스 경제성을
위해서라고 말이죠 자주 수정하는
부분이 복잡한 코드 때문에 실수가
발생하고 구성원들 모두가 코드를
이해하느라 개발 속도가 느려진다면
리팩토링을 해야 한다고 말합니다
개발자는 소비자가 요구하는 기능을
빠르게 추가하는게 중요한데 구조로
인해 속도가 느려진다면 리팩토링은
당연한 과정입니다 반면에 아무리
스파게티 코드라도 거의 수정 요청이
없는 코드는 리팩토링 할 필요 가
없다고 말하죠 그래서 정리하자면 투자
대비 미래의 개발 비용을 줄여 줄 수
있을 때가 바로 리팩토링이 필요한
시점이라고 볼 수 있습니다 캐나다에서
온라인 테크 교육 서비스를 운영하는
안드레이 네오라는 분은 10x
개발자는 보통 똑똑하고 게으르기
때문에 생산성이 올라간다고 말합니다
항상 자신의 삶과 일을 더 쉽게
만들기 위해서 1% 개선할 수 있는
방법을 찾는다고 말이죠 몇 가지
스스로 던지는 질문을 예로 들어
볼게요 전반적인 것들을 줄이기 위해서
지금 할 수 있는 가장 작은 노력은
무엇일까 지금 병목 현상은 무엇일까
지금 반복적으로 수동으로 하는 작업이
뭐가 있지 등입니다 저희 경우 제가
했던 가장 작은 노력은 위키 문서를
작성하는 것이었습니다 큐라고 할까요
저에게 많이 묻는 질문들을 도메인별로
모아서 자리에 없거나 바쁠 때는 일단
여기 한번 읽어 달라고 말이죠 그럼
집중해야 할 때 흐름을 끊지 않고
진행하기도 좋고 특히 코드 안에
주석을 넣기도 좋습니다 왜 이런
결정을 내렸는지 배경 등을 정리해
두면 휴 휴가를 가거나 회사를 아예
떠나더라도 자산으로 남아 다음에 같은
부분을 수정하는 동류의 시간을 줄여
줄 수 있습니다 마지막으로는라는
최적의 시간을 확보하는 것입니다
사람마다 일하기 좋은 시간이 따로
있죠 무라카미 하로 키에 달리기를
말할 때 내가 하고 싶은 이야기라는
책에서 소설가의 자질 중에 집중력이
중요하다고 말합니다 여기서 말하는
집중력이란 우리가 가진 한정된 양의
재능을 필요한 곳에 집약해서 쏟아붓는
능력을 말하죠 저의 경우 새벽
6시부터는 분들 출근전 10시까지가
컨디션이 제일 좋을 때입니다 그래서
그 시간을 완전 집중하는 시간으로
가셨는데요 10시 이후는 회의와
메신저 답변 퇴근 전 한 시간은
메일을 읽고 답장하는 시간으로
보냈었죠 멀티태스킹을 잘하시는 분들은
낮 시간에도 개발을 잘하셨는데 저는
흐름이 끊기면 다시 돌아오기 쉽지
않더라고요 하지만 저와는 달리 야간의
집중이 잘되는 분들도 많으실 거라
생각합니다 어느 시간이든 자신에게
맞는 최적의 시간을 찾는게 중요하겠죠
오늘 내용 정리해 보겠습니다 첫
번째는 투자 대비 비즈니스 임팩트가
큰 일을 먼저 선택한다 두 번째는
지금보다 1% 개선할 수 있는 방법을
찾는다 마지막으로는 자신에게 최적의
시간을 찾는다였습니다 오늘도 시청
감사합니다
Посмотреть больше похожих видео
5.0 / 5 (0 votes)