분류 전체보기
-
소프트웨어 장인 :: 11장 잘못된 면접 방식개발서적읽기/소프트웨어 장인 2023. 7. 6. 21:50
지양해야 할 면접 방식 이번 장에서는 10장에서 이야기했던 지양해야 할 면접 방식을 좀 더 구체적으로 설명한다. 책에서 설명하는 피해야 할 면접 방식은 다음과 같다. 똑똑한 척하는 면접관을 세운다 수수께끼식 질문을 던진다 답을 모르는 질문을 한다 지원자를 바보로 만든다 인터넷 접속을 막는다 종이에 코드를 작성하게 한다 알고리즘 문제를 낸다 전화 면접을 한다 이 중 '지원자를 바보로 만든다'와 '인터넷 접속을 막는다'가 인상깊었다. 지원자를 바보로 만든다 저자가 어떤 기업에 면접 봤던 이야기가 나온다. 그 회사의 면접관이 저자에게 이전 회사에서 작업했던 설계 내용을 설명해 달라고 했다. 그래서 저자가 열심히 설명했는데, 돌아온 대답은 '너무 단순하네요. 그건 제대로 된 실제 아키텍처가 아닙니다.'였다. 실..
-
소프트웨어 장인 :: 10장 소프트웨어 장인 면접하기개발서적읽기/소프트웨어 장인 2023. 7. 5. 10:15
면접은 면접관과 면접자가 서로를 평가할 수 있는 중요한 시간 이 장에서는 면접에 대한 회사와 개발자들 간의 올바른 자세를 설명한다. 면접은 면접관이 일방적으로 면접자를 평가하는 자리가 아니다. 면접자 역시 면접관을 평가해야 한다. 다만 채용하려는 자리의 수보다 면접자의 수가 보통은 훨씬 더 많아서 면접관의 평가가 영향력이 더 큰 것 같긴 하다. 그렇지만 소프트웨어 장인이라면 이러한 현실과 상관없이 회사들이 본인을 절실히 원하게끔 만들 수 있는 힘을 가지고 있을 것이기 때문에, 회사는 만반의 준비를 해야 소프트웨어 장인의 선택을 받을 수 있다.면접관의 자세 :: 소프트웨어 장인을 뽑으려면? 지원자가 질문을 많이 하는지 봐야 한다. 소프트웨어 장인은 자신의 커리어를 중요하게 생각할 것이기 때문에 이 회사에서..
-
소프트웨어 장인 :: 9장 인재 채용개발서적읽기/소프트웨어 장인 2023. 7. 5. 09:19
소프트웨어 장인을 채용하는 방법 이번 장에서는 소프트웨어 장인을 어떻게 채용하는지에 대해 설명한다. 소프트웨어 장인을 채용하기 위해선 먼저 소프트웨어 장인을 명확하게 정의해야 한다. 이전 포스팅에서 이야기했듯, 소프트웨어 장인은 기술에 대한 책임감과 성장에 대한 열정이 있는 개발자이다. 물론 높은 기술 수준도 중요하다. 하지만 최소한의 기술 수준을 만족한다면 기술 수준보다 책임감과 열정이 더 높은 우선순위여야 소프트웨어 장인을 채용할 확률이 높아진다. 채용 공고도 이 우선순위가 적용되어야 한다. 피해야 할 채용 공고 단순히 기술만 나열한 채용 공고는 구직자들이 지원하는 것을 망설이게 한다. 망설이는 구직자들 중에는 소프트웨어 장인들도 있을 것이며 그러면 이 소프트웨어 장인들을 놓칠 확률이 높아진다. 연차..
-
소프트웨어 장인 :: 8장 길고 긴 여정개발서적읽기/소프트웨어 장인 2023. 6. 22. 19:18
목표를 편하게 달성할 수는 없다 이번 장에서는 소프트웨어 장인으로서 커리어를 관리하는 자세를 이야기한다. 편안하고 익숙한 상태에서 벗어나 나를 발전시키고 배울 수 있는 기회를 지속적으로 찾아야만 한다는 것을 깨달았다. 이번 장의 위 문장이 인상깊었다. 어떤 목표를 달성하기 위해선 '나를 불편하게 하는 것'에 익숙해져야 하는 것 같다. 편한 방식으로는 목표를 달성할 수가 없다. 그것이 가능했다면 모든 사람들이 목표를 쉽게 이룰 수 있었을 것이고, 목표를 이루는 것이 더 이상 특별한 가치가 아니었을 것이다. '나를 불편하게 하는 것'에 능숙해진다면 어떠한 목표라도 달성할 수 있을 것이다. 훌륭한 커리어를 만들기 위해선 나를 불편하게 해야 한다. 작은 목표를 자주 달성해 보자. 그리고 나를 불편하게 하는 연습..
-
소프트웨어 장인 :: 7장 기술적 실행 관례개발서적읽기/소프트웨어 장인 2023. 6. 22. 00:25
기술적 실행 관례의 적용 이번 장에서는 '소프트웨어 장인으로서, 최선의 기술, 도구, 절차, 방법론 그리고 TDD나 페어 프로그래밍 같은 기술적 실행 관례를 올바르게 선택할 수 있는 능력을 가져야 함'을 말한다. 보통 기술적 실행 관례는 소프트웨어를 더 긍정적으로 관리하기 위해 등장한다. 그렇지만 꼭 기술적 실행 관례들을 적용해야만 하는 것은 아니다. 모든 것은 상황에 맞아야 그 의미가 있는 법이다. 소프트웨어 개발자 경험이 적은 사람은 시야가 좁은 경우가 많기 때문에 새로운 기술적 실행 관례를 맹신하여 그것을 당장 실무에 적용하고 싶어 할 수 있다. 그렇지만 현재의 관례가 더 나을 수도 있음을 알아야 한다. 기술적 실행 관례를 적용하기 위해서 필요한 자세 일단 지금이 특정 기술적 실행 관례를 적용해야..
-
소프트웨어 장인 :: 6장 동작하는 소프트웨어개발서적읽기/소프트웨어 장인 2023. 6. 21. 01:37
소프트웨어는 주기적인 관리가 필요하다 4장, 5장에 이어서 이번 장에서도 소프트웨어 장인이 지녀야 하는 태도를 설명한다. 유지 보수가 원활한 소프트웨어는 주기적인 관리를 필요로 한다. 소프트웨어를 구현할 때 단순히 동작하는 것을 목표로 설정하면 안 된다. 소프트웨어가 '잘' 동작하는 것을 목표로 설정해야 한다. 만약 그렇지 못했다면, 구현 후에라도 잘 동작하도록 리팩토링해야 한다. 현실과 원칙 사이에서 균형을 잘 잡아야 한다. 테스트 코드 운용 및 관리의 필요성 소프트웨어의 주기적인 관리 리스트 중에는 '테스트 코드를 잘 관리하기'가 있다. 테스트 코드를 잘 관리하여 운용하고 있다면 동료들의 소중한 시간을 아낄 수 있다. 예를 들어보자. 코드를 생성하거나 수정한 다음 dev 서버에 배포하기 전에 lo..
-
소프트웨어 장인 :: 5장 영웅, 선의 그리고 프로페셔널리즘개발서적읽기/소프트웨어 장인 2023. 6. 10. 18:50
우리는 '아니오'라고 말할 수 있어야 한다 이번 장에서는 4장에 이어서 소프트웨어 장인이 지녀야 하는 태도를 설명한다. 사실 이 책을 좀 오해했던 것 같다. 1~4장에서는 프로 정신을 강조하면서 모든 것에 적극적이고 최선을 다하라는 내용이 많았는데, 머리로는 공감됐지만 몸으론 공감하기가 쉽지 않았다. 좋은 말이긴 한데, 한정된 시간에 그것을 실천하기는 어려울 것 같아서 '현실과는 약간 동떨어진, 상위 1%의 개발자를 위한 책인가?' 싶었다. 그런데 이번 장을 읽고는 이 생각이 오해였다는 것을 깨달았다. 이번 장에서 이야기하는 '아니오'는 '과도한 업무 지시를 거부하는 것'을 의미한다. 상용화 수준에 미달되는 저품질의 소프트웨어가 될 수 밖에 없다면 주어진 조건들을 거부했어야 했다 책에 나오는 위 문장을 ..
-
소프트웨어 장인 :: 4장 소프트웨어 장인의 태도개발서적읽기/소프트웨어 장인 2023. 6. 6. 13:39
커리어와 관련하여 남탓하지 말기 내 커리어의 주인공은 나다. 내 커리어의 성장은 내 책임이다. 내 커리어는 내가 가꿔야 한다. 간혹 어떤 회사에서 일하는 것이 나에게 별로 도움이 되지 않는다는 불만이 생길 수 있다. 그러면 다른 곳으로 이직을 하면 된다. 혹은 그 회사에서 일하는 것이 나에게 도움이 되도록 고객(고용주)에게 건의를 하면 된다. 그런데 이도 저도 아니고 그저 불만만 늘어놓는 것은, 냉정한 말일 수 있겠지만, 본인은 그런 회사에 어울리는 근로자이자 장인까지는 못 되는 개발자인 것이다. 해야 할 것은 하고 요구할 것은 요구하고 아닌 것은 아니라고 말하는 책임 있는 프로의 모습이 바로 장인의 모습이다. 환경에 의존하지 말고 스스로에게 의존하자. 자기 계발하기(페어 프로그래밍) 이 책에는 '소프트..