전체 글

전체 글

    [CHAPTER 4] 소프트웨어 장인의 태도

    오래 전에 작성했던 코드를 지금에 와서도 고칠 부분이 없어 보인다면, 그것은 그동안 배운 것이 없다는 뜻이다. 소프트웨어 장인이라면 스스로가 만든 것에 애정과 자부심을 가져야 함은 기본이다. 계속해서 더 나은 프로페셔널이 되기 위해 일평생 정진해야 한다 챕터 처음에 나오는 문구다. 누구라도 공감이 될거다. 동료와 같은 시기에 같은 직위로 입사해 1년 정도 같이 일했다... 동료에게 요즘 일하는 것이 어떤지 물었더니 "나는 정말 이 회사가 싫다. 진절머리 나는 회사다."라는 대답에 적잖이 놀랐다. 나는 당시 ,정말 즐겁게 일하고 있었기 때문이다... 커리어의 주인이 누구라고 생각하느냐고 물었다. 동료는 내 질문을 잘 이해하지 못한 듯 했고... 같은 회사, 같은 프로젝트에서 누구는 즐겁게 일하고 배우고, ..

    [CHAPTER 3] 소프트웨어 장인정신

    시작부터 아래의 내역은 소프트웨어 장인정신이 아니라고 한다. 아름다운 코드 테스트 주도 개발 스스로 조직화된 개발 그룹 특정 기술 또는 방법론 자격인증 종교 개발자라면 중요하다고 생각할 요소인데 아니란다. 도대체 소프트웨어 장인정신의 실체는 무엇일까? 드디어 이 주제에 대한 언급이 시작되며 여러가지 정의를 언급한다. 위키피디아에서의 정의 '소프트웨어 장인정신'은 소프트웨어를 개발할 때 개발자 스스로의 코딩 스킬을 강조하는 개념이다...(생략) 저자는 이러한 정의가 굉장히 딱딱하고, 핵심 의미를 담아내지 않는다며 좋아하지 않는다고 한다. 좀더 주관적인 정의 소프트웨어 장인정신은 마스터가 되어가는 긴 여정이다. 소프트웨어 장인정신은 소프트웨어 개발자가 스스로가 선택한 커리어에 책임감을 가지고, 지속적으로 새..

    📖5월 목표 및 4월 회고📖

    5월이 시작된지 얼마 안되었다. 4월 목표 이후 무엇이 변했을까? 4월 회고 📖 TDD, Clean Code With Java 11기 교육, 그리고 멘토링 신청 📖 클린코드를 위한 TDD, 리팩토링 with Java edu.nextstep.camp 값진 걸 깨닫게 해준 교육이 지난 주 마지막 수업이 끝났다. (교육기간은 하루가 남았지만 끝났다고 하자) 백수인 덕분에 남들보다 3,4주 일찍 수료를 했고, 계속 객체지향에 대한 공부를 진행했다. 하지만 뜻대로 공부가 제대로 진행되지 않았다. 멘토링 혜택 을 받기위해 3년의 경험을 정리하고 이력서 작성에 시간을 2주가까이 걸렸다. 그 동안 경력을 정리했더니 SI 플젝만 8개 했었고 (신입일 때 메인플젝 중심으로 겸업했다) 그 중 가장 짧은 플젝은 2주간짜리도 ..

    [CHAPTER 2] 애자일

    2001년 2월, 당시 방대한 문서 작업을 기반으로 하는 소프트웨어 개발 방법론에 어떤 대안이 있을지 토론하기 위한 모임에서 애자일 매니페스토가 창안되었고 애자일 연합이 만들어졌다. 애자일이란 용어를 자주 접하는데, 많은 기업에서 애자일을 쓴다는 말이 있고 하니, 지금까지 경영 & 경제학에서 생긴 개념으로 알았다. 개발 방법론에서 나온 용어라니 기분이 생소하다. 애자일 애자일은 어떤 단일 개념이 아니다, 애자일은 서로 다른 여러 맥락에 따른 방법론과 테크닉의 조합이다. 애자일은 절차적인 부분과 기술적인 부분의 두 종류로 나눠진다. 절차적인 관점에서의 애자일 팀의 조직이 어떻게 구성되고 협업해야 하는지에 대한 것들을 규정한다. 회의 방식 구성원 각각의 역할 요구사항 파악 방법 작업 진척 속도 파악 방법 점..

    [CHAPTER 1] 21세기의 소프트웨어 개발, Part1 이념과 태도 시작

    저자는 1990년대 복잡하고 난해한 코드로 남이 이해 못하면 실력이 좋다고 한다. 그리고 7년차에 '숙련된 개발자'가 아닌 '소프트웨어 아키텍트'로 커리어가 전환이 되면서 겪는 이야기를 한다. 아키텍처 팀은 개발자들이 따라야만 하는 디자인 패턴 북을 만드는 막강한 권한이 있다 (생략) 아키텍트는 비즈니스 분석가와 대화하며 요구사항의 기능적/비기능적 요소들을 이해하고 (생략) 요구사항과 고객 환경이 어떻게 바뀔지 무당이 점치듯 추측해야 한다. 예측하는 것은 거의 불가능했다. (생략) 시스템이 커지더라도 부작용이 적을지 고민해야 했다. 이에 대한 대응책이 추상화를 하고, 요소마다 디자인 패턴을 적용하는 것이다. 오늘날에는 그런 방식을 오버 엔지니어링이라고 한다. 어리석지만 그 당시에는 아키텍트의 혜안이라고 ..

    소프트웨어 장인을 시작하면서...

    소프트웨어 장인 더 나은 개발자가 되어, 더 좋은 코드를 전달하고 싶은 당신을 위하여...이 책에서 풀어낸 소프트웨어 장인정신의 프로페셔널리즘, 기술적 탁월함, 고객 만족은 애자일, 린(lean) 원칙들과 시너지 www.yes24.com 처음 이 책을 추천 받고 겉표지와 제목만으로 "장인? 시니어 정도되면 읽어야될거 같은데" 라 느꼈다. 책을 펼치면 저자 서문이 나오는데 1990년대에는 다른 사람이 알아볼 수 없는 난해한 코드를 짤 수 있는 사람이 실력있는 개발자로 통했다. ... "이 코드가 얼마나 무례한지 알고 있습니까?" 그는 조용히 말했다. "많은 팀과 개발자들이 같은 코드 베이스에서 아주 큰 시스템을 만들고 있습니다. 모든 개발자들이 이런 식으로 으스대려고 난해한 코드를 만들면 코드를 이해하기가..

    이규원님의 현실 세상의 TDD 기초, 8편 : 프로그래머 피드백

    📖 이규원 님의 TDD 수강하는 걸 추천드립니다. 👍 The RED : 이규원의 현실 세상의 TDD : 안정감을 주는 코드 작성 방법 | 패스트캠퍼스 그동안 우리나라에는 TDD를 제대로 다루는 책도 강의도 없었죠. 그래서 제가 개발 현장에서 활용하는 TDD를 정확하게 알려드리고자 강의를 만들었습니다. 이제 TDD에 대한 잘못된 인식은 버리고, ' fastcampus.co.kr 피드백 사용자의 피드백부터 시작하여 QA, 테스트, 도구 피드백 등 개발자에겐 피드백은 매우 중요한 요소다. 사용자 피드백 사용자가 소프트웨어를 사용한 후 버그나 개선 사항들을 제보. 개발하고나서 사용자에게 가는 거까지 앤드단계이기 때문에 가장 확실한 피드백이자 제품과 비즈니스 입장에서 피해가 큰 피드백이다. QA (Quality ..

    이규원님의 현실 세상의 TDD 기초, 7편 : 테스트 주도 개발

    드디어 테스트 주도 개발에 대한 핵심에 돌입한다. 📖 원본이 궁금하면 이규원 님의 TDD 수강하는 걸 추천드립니다. 👍 The RED : 이규원의 현실 세상의 TDD : 안정감을 주는 코드 작성 방법 | 패스트캠퍼스 그동안 우리나라에는 TDD를 제대로 다루는 책도 강의도 없었죠. 그래서 제가 개발 현장에서 활용하는 TDD를 정확하게 알려드리고자 강의를 만들었습니다. 이제 TDD에 대한 잘못된 인식은 버리고, ' fastcampus.co.kr 테스트 주도 개발 이전 시간에 했던 테스트 우선 개발과 비슷하다. 명세를 준수하고 일정 수준의 품질을 유지하며 코드를 만들어간다. 테스트 주도 개발 절차 테스트 주도 개발은 3가지 단계로 반복적으로 사이클이 돌아간다. 1. RED - 실패하는 테스트 추가 2. GRE..