본문 바로가기

IT 공부/공부하며 알게된 사실들11

소프트웨어의 사용자 관점에서 느낀 것들, 소프트웨어 개발의 본질. 개발 공부를 하다보면 (당연하겠지만) 개발자, 즉 제품 생산자의 관점에서 기술을 바라볼 수 밖에 없다. 그러나 개발의 본질은 소프트웨어를 만드는 것이고, 해당 소프트웨어는 사용자의 편의를 위한 기술이다. 어떤 기술이 되었든, 그것을 만드는 총체적인 과정에서 만나는 여러 사항들을 해결하기 위해 기술들이 탄생한다. 그래서 가끔은 어떤 기술이 있을 때, 이것이 왜 존재하는지 생각해보곤 한다. (정답인지와는 별개로) 나는 밀리의 서재라는 소프트웨어를 애용한다. 구독 시스템을 기반으로 한 디지털 이북 소프트웨어다. 그런데 쓰면서 불만이 이만저만이 아니다. 지속적으로 업데이트되곤 하지만 사용자 입장에서는 "왜 이런 기술이 없는거지?"라는 의문이 들 때가 많다. 예를 들어, 나는 책을 읽다가 하이라이트를 많이 하는데.. 2023. 11. 12.
개발자의 문제 해결 역량이란? (feat. 구글 면접 시뮬레이션) 글로벌 소프트웨어를 말하다, 지혜 『글로벌 소프트웨어를 말하다, 지혜』는 소프트웨어에 대한 근본적인 이해와 통찰력인 지혜를 통해 글로벌 소프트웨어로 나아갈 수 있도록 안내한 책이다. 소프트웨어를 꿈꾸는 대학생들과 취업준비생, 소프트웨어 개발자, 글로벌 소프트웨어를 만들고 싶어하는 회사의 CEO, CTO, 경영진 등에게 글로벌 소프트웨어를 개발하는 데 필요한 ‘지혜’가 무엇인지 일깨워준다. 이 책은 이야기 형식으로 구성되어 있어 쉽고 재미있게 읽을 수 있고, 실리콘밸리의 소프트웨어 회사와 국내 소프트웨어 회사의 차이점과 그 이유를 짚어주며, 오래도록 개발자로 살아남을 수 있는 길을 제시한다. 저자 김익환 출판 한빛미디어 출판일 2014.06.05 라는 책에서 구글의 면접 시뮬레이션에 대해 저자가 상상한 간.. 2023. 11. 8.
실력이 좋은 개발자가 높은 임금을 받는 이유. 실력이 좋은 개발자와 아닌 개발자의 차이는 도대체 어디서 생기는 것일까? 메타의 마크 저커버그는 실력이 좋은 개발자는 그렇지 않은 개발자에 비해 100배의 차이를 보인다고 말했다. 처음에는 도대체 저 100배라는 것의 근원이 무엇인지 궁금했다. 생각하면 정말 소름 끼치는 차이다. 나는 당연히 현재 공부하고 있는 취준생이기 때문에 실력이 좋지 않다. 그래도 열심히 하면 쓸만한 개발자가 될 수 있을 것이라 생각했다. 그런데 나보다 실력이 좋은 사람은 나보다 최소 100배, 1000배 이상의 실력을 갖추고 있다니... 아무리 생각해도 생산성이 어떻게 100배나 나올 수 있는지 궁금했다. 그리고 오늘 공부를 하면서 읽은 책의 아래의 내용에서 생산성 차이가 어떤 의미인지 알 것 같았다. 필자는 2008년 당시 구.. 2023. 11. 5.
코딩 주석 코딩을 할 때 주석을 달라는 말을 많이 듣는다. 주석이 있어야만 다른 사람이 코드를 이해할 수 있고, 미래의 나에게도 도움이 된다는 것이다. 물론 코드가 그 자체로서 요구사항을 충실히 반영하고 쉽게 읽혀진다면 주석이 필수는 아닐 것이다. 그러나 그렇다고 주석을 빼서는 안 된다고 한다. 즉, 주석은 처음부터 타인과의 소통과 협업을 위해 만들어진 도구다. 지금 혼자 독학하고 있는 나로서는 타인이 나의 코드를 바라보는 관점을 획득하기 힘든 환경이다. 마틴의 에서는 주석의 중요성을 강조한다. 그래서 한동안 주석 작성법을 열심히 배웠지만, 당연히 소용이 없었다. 왜냐하면 주석 다는 법은 술(術)의 영역이고, 주석의 도(道)는 타인이 코드를 어떻게 읽고 해석하는지 그 관점을 획득하는 것에 있기 때문이다. 당연히 술.. 2023. 11. 1.