본문 바로가기

소프트웨어

[리뷰] 성장과 경력을 알려주다 <소프트웨어 엔지니어 가이드북> 소프트웨어 개발자로 성장하려면 어떻게, 무엇을 해야 하는지 알 수 있습니다.커리어 관리라는 방식을 통해 개발자로 성장하기 위해 알아야 할 것들을 조목조목 알려줍니다. 나선형으로 쌓아가다소프트웨어 엔지니어로 어디까지 올라갈 수 있는지 알 수 있습니다.업체 규모에 따라 다르고 분야마다 바라보는 시각이 다양하다는 사실을 알려주고, 소프트웨어 엔지니어로서 커리어를 어떻게 가져가야 하는지를 얘기합니다.창업하여 자신만의 일을 만들어가는 건 전혀 다른 얘기이므로 다루지 않습니다.각개 격파처럼 하나씩 해결하며 나아갈 수 있으면 좋겠지만 그런 건 존재하지 않습니다.경력이 쌓이고 역할이 바뀌면서 부침도 있지만 새로운 시야를 얻을 수 있고, 그로 인해 이미 알고 있는 내용도 다르게 보고 대응하므로, 한 단계 더 나아가는 것.. 더보기
[리뷰] 기본을 알려주는 <소프트웨어 설계의 정석> 생각보다 무겁지 않습니다.제목에 '정석'이라는 단어가 있어서 딱딱할 거라 생각할 수 있지만 걱정하지 않아도 됩니다.성격 좋고 경험 많은 선배와 차 한잔 마시며 가볍게 고민 상담하는 분위기랑 비슷합니다.현장에서 겪으며 익힌 소프트웨어 설계에 관한 내용입니다. 무겁지 않습니다설계, 아키텍처, 방법론 자료를 찾다 보면 선뜻 접근하기 쉽지 않습니다.방대한 범위, 빽빽한 내용, 만만찮은 분량에 '과연? 이걸? 내가?' 하는 생각이 저절로 듭니다.우리가 원하는 건 프로젝트 성공입니다.이를 위해 위해 알아야 할 것, 필요한 것, 생각해봐야 할 것으로만 짜여 있습니다.부담 없이 읽을 수 있습니다. 대상이 분명합니다설계를 하다 보면 같은 말인데 서로 다른 얘기를 할 때가 있습니다.동일한 대상을 얘기하지만 각자 머릿속에 .. 더보기
[리뷰] 지금 이곳에서 <진화적 아키텍처> 소프트웨어 아키텍처만으로도 생각이 많아지는데 진화적 아키텍처라니. 처음 드는 느낌은 마치 열심히 걷고 있는데 저 멀리서 달려 나가고 있는 상대를 보고 있는 느낌이었습니다. 그처럼 진화적 아키텍처는 디디고 있는 현실을 생각하면 너무 먼 얘기처럼 보였습니다. 하지만, 내용을 알아갈수록 현재를 돌아보고 앞으로를 살피게 하는 힘이 있었습니다. 역학, 구조, 영향력 피트니스 함수, 자동화, 점진적 변화, 커플링과 중복, 데이터, 함정, 안티패턴 등. 생각지도 못했던 내용, 어렴풋하게나마 추측한 상태에 머무르던 개념, 나름 안다고 생각했지만 그게 다가 아니었던 관계 같은 내용이 생생하게 펼쳐져 있습니다. 사례가 있어서 그나마 따라갈 수 있었습니다. 책에서 인용한 한 문장이 이 모든 걸 한마디로 정리해 주는 것 같습.. 더보기
[리뷰] 당신이 알고 있던 테스트를 넘어서는 <이펙티브 소프트웨어 테스팅> 소프트웨어 개발은 테스트의 연속입니다. 일일이 결과를 출력하든, 브레이크 포인트를 잡아서 한 단계씩 확인하든 어떤 방식을 사용하든 만든 코드가 의도한 대로 돌아가는지 확인해야 합니다. 테스트를 누군가 해준다면 나는 코드에 집중할 수 있을 거라는 생각도 했었었지만 리뷰를 쓰며 드는 생각이 그러려면 분신술을 쓸 수 있어야겠다는 생각이 드네요. 배보다 배꼽이 체계적이고 효율적인 테스트를 추구한다고 합니다만 내용을 읽다 보면 '이 정도까지 한다고'라는 생각이 들 수 있습니다. 자판기에서 음료를 뽑듯이, 누가 하더라도 누락되는 부분 없이 기본 테스트 구성을 만들 수 있다는 데서 시작합니다. 기본 구성 위에 다양한 테스트 대상을 적용하며 테스트를 다듬어 나갑니다. 테스트를 개발에 적극 활용한다 정도로 생각하면 오산.. 더보기