1. 나 이런 실패들을 해봤지
•
실패란? 일을 잘못하여 뜻한 대로 되지 아니하거나 그르침
•
실패 예)
◦
미라클 모닝 실패
◦
일정 완료 예정일 날에 개발을 완료 못할 것이라는 걸 깨달은 순간
1.1. 개발자로서 나의 실패
•
버그 있는 코드 배포
◦
사용자가 서비스 이용 시 문제 발생
•
운영 DB 테이블 삭제
◦
데이터 복구 밤샘 작업에도 불구하고 손실된 데이터
•
코드 배포 후, 성능 문제 발생
◦
서버 다운으로 서비스 중단
•
언제나 기시감이 드는 코드 작성
◦
나만 성장하지 않은 것 같은 자괴감
1.2. 제품 만드는 사람으로서 나의 실패
•
나는 개발자니까 기술에만 집중하는 태도
◦
코드는 미미하게 견고했지만, 서비스를 떠나가는 사용자
•
개발 문화만 너무 소중한 태도
◦
개발팀만 신나고 후퇴하는 제품/서비스의 성장
1.3. 관리자 로서 나의 실패
•
팀의 역량을 파악하기 전 일을 계획함
◦
프로젝트 중단
•
개발팀 과잉 보호
◦
소통과 신뢰가 어려운 개발팀 (개발팀만 똘똘 뭉치고 소통이 안돼)
•
팀원을 이해하기전, 판단
◦
어려운 리더가 됨
2. 실패 그 후
실패 그후 어떤 성장을 했나?
과정에 대한 이야기도 중욯지만, 실패 이후 성장한 결과에 대한 내용
2.1. 개발자로서 나의 실패, 그 후
•
버그 있는 코드 배포
◦
코드 리뷰 절차 강화
•
운영 DB 테이블 삭제
◦
인프라 보안 강화
•
코드 배포 후, 성능 문제 발생
◦
성능 테스트 절차 강화
•
언제나 기시감이 드는 코드 작성
◦
코드를 다시 작성해보는 습관 획득
2.2. 제품 만드는 사람으로서 나의 실패, 그 후
•
나는 개발자니까 기술에만 집중하는 태도
◦
최종 사용자 관점에서 고민하는 태도
•
개발 문화만 너무 소중한 태도
◦
동일한 목표를 바라보는 원팀으로의 협업
2.3. 관리자 로서 나의 실패, 그 후
•
팀의 역량을 파악하기 전 일을 계획함
◦
일과 사람을 냉정하게 바라보고 실현 가능성 판단
•
개발팀 과잉 보호
◦
주도적으로 일을 찾는 팀
•
팀원을 이해하기전, 판단
◦
의문이 아닌, 이해와 인정이 먼저
2.4. 결과를 보고 나니..
•
모두 예측 가능한 성장 결과
•
배움이 아닌 회피를 택한 경우가 무수히 많았음
•
그런 경험이 쌓이다보니 실패를 대하는 방법이 생김
•
대단하지 않지만 루틴이 생겼다는 사실이 도움이 됨
3. 실패를 마주보기
3.1 실패를 대하는 방법
1.
실패의 순간, 가라앉은 감정 충분히 느끼기
•
회피하지 않고, 이 경험 안에서 느끼고 있는 감정을 알아채기
2.
그 감정에서 빠져나오기
•
필요 이상으로 감정에 매물되어 있음을 인지하기
•
빠져나오기 위한 나만의 의식 만들기
◦
예) 가라앉은 감정에서 빠져나오는 과정
1.
문제가 뭐였을까? 생각 또 생각
2.
같은 생각 혹은 후회를 반복하고 있네? (인지)
3.
활자를 읽자 (의식)
4.
더 이상 가라앉은 감정에 매몰되지 않고 빠져나옴
3.
실패를 제대로 바라보기
•
감정을 배제하고, 사실만 보고, 잘한 것 / 놓친 것을 적어보기
◦
자기가 한 실패를 손으로 기록하는 것은 실패를 반복하지 않게, 나에게 실패를 정확히 각인하기 좋은 수단
4.
단 한가지의 액션 아이템 선정하기
•
이 실패를 반복하지 않기 위한 단 한가지를 실행하기 ( = 회복)
3.2. 실패를 반복하지 않기 위한 단 1가지
•
개발자로서의 실패 예시를 다시 살펴보면,
◦
버그 있는 코드 배포
▪
코드리뷰 절차 강화 vs 테스트 코드 작성 문화
◦
코드 배포 후 성능 문제 발생
▪
성능 테스트 절차 강화 vs 고급 API 로직 분석
•
팀이 이 실수를 반복하지 않도록
◦
전파 속도가 빠르고, 실패 반복 가능성이 낮은 방법을 선택
3.3. 임팩트가 가장 큰 1가지의 액션 아이템
•
실패를 가만히 들여다보면 여러가지 액션 아이템이 떠오름
•
하지만 가장 임팩트가 있는 단 한가지만 선택하려고 함
•
그 이유는 실패를 대하는 루틴이 너무 무겁지 않았으면 해서임
•
루틴이 무거워지는 순간 회피하게 될 것 같음
3.4. 실패를 대하는 방법 응용
1) 실패의 순간, 가라앉은 감정 충분히 느끼기
2) 그 감정에서 빠져나오기
3) 실패를 제대로 바라보기
4) 단 한가지의 액션 아이템 선정하기
•
관리자인 경우, 팀/팀원의 실패를 대할때도 동일한 루틴을 적용할 수 있음
•
팀/팀원이 루틴을 실행할 수 있도록 돕는 역할에 집중
4. 그래서 하고 싶은 말은?
4.1. 실패는 당연하다는걸 우리는 모두 알고 있어요
•
우리는 너무나 익숙하게 실패를 전제로 일을 하고 있음
•
예)
◦
TDD
▪
RED (실패하는 테스트 작성)
▪
GREEN (테스트 통과)
▪
REFACTOR
◦
Agile 하게?
▪
Fail Fast
4.2. 누구나 실패하고 누구나 힘들어해요
•
실패하지 않았다는 말은 시도하지 않았다는 말이죠
•
실패한 적이 없는 사람은 늘 회피하는 사람일 거에요
•
그리고 그 실패 앞에서는 누구나 가라앉은 감정에 빠집니다.
•
그 상태를 받아들이는게 중요해요
오프라 윈프리 “굴속에 빠졌을 땐 잠시 우울해도 괜찮습니다”
실패를 했을 때 우울한 것은 당연하다. 그래야 실패를 직면 할 수 있음
4.3. 스스로 심리적 안정감을 만들어주세요
•
조직의 심리적 안정감 이야기 많이하잖아요
•
삶에서 너무나 당연한 실패인데 스스로에게는 참 인색하죠
•
나 자신에게 실패해도 괜찮다고 당연하다고 해주세요
•
모든 실패는 나름 의미가 있지만, 모두 극복할 필요는 없어요
•
나만의 실패를 대하는 루틴도 꼭 만들어 주시고요
위인전에는 없는 페이지
•
위인전에는 성공 이야기만 가득함
•
그러나 실제로는 그들은 실패와 실수에 대한 기록을 성공보다 훨씬 많이 함
→ 실패를 했을때 손으로 기록하는 행위가 실패를 반복하지 않게 각인시키는 가장 좋은 수단