본문 바로가기

Dev Talks/Developer Life13

뛰어난 소프트웨어 개발자가 갖춰야 할 5가지 소프트웨어 개발자에게 코딩은 필수입니다. 그런데 뛰어난 개발자는 단순히 코딩만 할 줄 안다고 되는 것이 아닙니다. 코딩 능력 외에도 아래 5가지를 갖춰야 뛰어난 소프트웨어 개발자가 될 수 있다고 생각합니다. 1. 클린코드 작성 누구나 프로그래밍 언어를 배우면 코드를 짤 수 있죠. 하지만 누구나 클린 코드를 짤 수 있는 것은 아닙니다. 올바른 구조와 철학을 갖추지 못한 코드는 유지 관리가 어렵습니다. 자신이 짠 코드를 다시 이해하는데 몇 시간씩 걸리는 개발자가 있습니다. 이런 코드로 이루어진 어플리케이션은 간단한 수정도 하기 어렵습니다. 제가 생각하는 클린 코드는 자신을 포함해서 다른 사람도 쉽게 이해할 수 있어야 합니다. 물론 클린코드에 대해서는 다양한 관점과 해석이 있습니다. 다만, 대체적으로 유지 관.. 2020. 12. 8.
좋은 개발자가 갖춰야 하는 마인드 셋 (요약) - 2편 좋은 개발자가 갖춰야 하는 마인드 셋 (요약) 1편에 이어 나머지 항목들을 살펴보도록 하겠습니다. 참고로 아래 글은 Dev.to에 올라와 있는 글 중 Fundamentals of Good Developer Mindset 이라는 글을 읽고 그 내용을 요약 정리한 글입니다. 원문 : Fundamentals of Good Developer Mindset 11. 예측 나중에 어떤 기능이 추가될지 너무 예측하다보면 자칫 오버 엔지니어링에 빠질 수 있다. 12. 가정 앞서 예측과 마찬가지로 가정에 기반한 개발도 지양해야 한다. 예를 들어 X가 필요해서 개발을 하다가 나중에 Y도 필요해질 것 같아서 Y까지 구현하는 개발자가 있다. 하지만 미래에 Y가 전혀 필요 없게 되거나 Z를 만들기 위해 Y를 제거해야한다면 불필요.. 2019. 9. 20.
좋은 개발자가 갖춰야 하는 마인드 셋 (요약) - 1편 복잡한 소프트웨어는 조금만 수정해도 문제가 생기죠. 이런 소프트웨어를 담당한다는 것은 개발자에게 악몽이나 다름 없습니다. 이렇게 잘못 만들어진 소프트웨어는 대부분 개발자의 잘못된 마인드 셋에서 비롯 되는데요. 관련해서 오늘은 dev.to에 올라와 있는 글 중 Fundamentals of Good Developer Mindset 이라는 글을 읽고 그 내용을 요약 정리해봤습니다. 원문 : Fundamentals of Good Developer Mindset 버그를 고치면 새로운 버그가 생기고, 작은 변경도 어렵고, 이전에 만든 코드를 재사용하지도 못하고 중복 코드를 양산하게 되는 소프트웨어가 있다. 이런 소프트웨어를 만들지 않으려면 어떤 Mindset을 가져야 할까? 1. 소프트웨어의 목적 개발자는 의사결정.. 2019. 9. 20.
개발자 인터뷰 시 면접관에게 할 만한 질문 모음 개발자 인터뷰는 같이 일할 만한 사람인가를 알아보기 위한 자리입니다. 그래서 기술 면접에는 동료 개발자나 팀 리더가 참석하게 되죠. 이 때 그들이 우리를 판단하는 것처럼 우리도 그 회사가 일하기 적절한 회사인지 질문을 통해 판단할 수 있습니다. 면접관의 질문이 끝났다면, 이제 당신이 미래의 동료가 될 개발자들에게 물어볼 차례입니다. 이번 포스트에서는 개발자 인터뷰 또는 기술 면접에서 면접관에게 할 만한 질문 몇 가지를 정리해봤습니다. 1. 팀(프로젝트)에 몇 명의 개발자가 있는지 먼저 앞으로 일하게 될 팀에 개발자가 몇 명 있는지 물어봅니다. 이 질문은 면접관에게도 그다지 민감한 질문은 아닐텐데요. 만약 프로젝트 단위로 운영되는 팀이라면 본인이 투입될 프로젝트에 개발자가 몇 명인지 물어보면 되겠죠? 신입.. 2019. 5. 14.
머신러닝 공부 순서, 방법 및 강의 정리 이번 포스팅에서는 작년부터 머신러닝 공부를 시작하면서 들었던 강의와 머신러닝 공부 방법에 대해서 정리해보려고 한다. 필자도 아직 머신러닝을 마스터하려면 갈 길이 멀었지만, 그간 공부했던 경험을 토대로 머신러닝 입문자들에게 조금이나마 도움이 됐으면 하는 마음으로 적어봤다. ※ 주의 : 이 글은 이제 막 머신러닝을 공부하려는 입문자를 위한 글입니다. 이미 머신러닝을 많이 공부하신 분들에게는 별로 도움이 되지 않을 것입니다. 우선 필자에 대해 간략하게 소개하자면, 한국에서 자바 개발자로 시작해 이 후 여러 모바일 웹앱 프로젝트를 하면서 프론트엔드 개발자로 커리어를 바꾼 9년 차 개발자이다. 어쩌다 지금은 미국으로 건너와 1인 개발자로 일하고 있다. 필자가 미국으로 건너 오게 된 이야기는 부끄럽지만 나의 퇴사 .. 2019. 1. 16.
[나의 퇴사 이야기] #6 새로운 도전: 1인 개발자 1인 기업가 이 시리즈는 개발자 커리어를 갖게 된 계기와 퇴사를 하고 1인 개발자로 나서게 된 사연에 대한 이야기입니다. 일기 형식으로 6회에 걸쳐 연재하였고, 혹시 저와 비슷한 진로를 생각하시는 분들에게 참고가 되었으면 좋겠네요. #6 새로운 도전 : 1인 개발자, 1인 기업가 여러 가지 우여곡절과 복잡한 절차가 있었지만 (나의 미국 이민 경험담 참조) 무사히 미국으로 이민을 마쳤다. 다만 집이 위치한 곳이 도심에서 떨어진 동네라 집 근처에 이용할 시설이 그리 많지는 않다. 고층 건물은 동네 주민 센터 말고는 하나도 없고, 미국에서 그 흔한 스타벅스도 하나 없다. (대신 동네 커피숍이 있긴 있다) 다행이라면 집 바로 근처에 공공도서관이 있다는 점. 일 하다가 잘 안되면 도서관으로 바로 갈 수 있다. 집은 하우스 건.. 2017. 1. 5.
[나의 퇴사 이야기] #5 퇴사 : 뜻밖의 기회 그리고 결심 이번 포스팅 시리즈는 개발자 커리어를 갖게 된 계기와 퇴사를 하고 1인 개발자로 나서게 된 사연에 대한 이야기입니다. 일기 형식으로 6회에 걸쳐 연재하였고, 혹시 저와 비슷한 진로를 생각하시는 분들에게 참고가 되었으면 합니다. #5 퇴사 : 뜻 밖의 이민 그리고 결심 회사원의 슬럼프는 3, 5, 7년 주기로 온다고 했던가. 5년 차에 다시 한 번 큰 슬럼프가 왔다. 그 당시 외부 고객사의 차세대 프로젝트에 모바일 아키텍트로 참가했었는데, 그게 5년 차 슬럼프의 원인이었다. 당시 그 프로젝트에 합류하게 된 것은 자의가 아니었다. 기존에 프로젝트를 진행하던 분이 팀에 도움을 요청을 했고, 팀에서 급작스럽게 구원투수의 역할로 투입이 되었던 것이다. 이미 프로젝트 마감은 상당히 지나가 있었고, 개발 요구사항은 .. 2017. 1. 5.
[나의 퇴사 이야기] #4 전환 : 전문가로의 길 이번 포스팅 시리즈는 개발자 커리어를 갖게 된 계기와 퇴사를 하고 1인 개발자로 나서게 된 사연에 대한 이야기입니다. 일기 형식으로 6회에 걸쳐 연재하였고, 혹시 저와 비슷한 진로를 생각하시는 분들에게 참고가 되었으면 좋겠네요. #4 전환 : 전문가로의 길 수술 이 후 3개월의 휴직 기간 중 그냥 가만히 있을 수는 없다고 생각했다. 몸을 회복하고 이대로 업무에 복귀해봐야 똑같은 일상이 반복될 것 같았다. 회사에서는 그 시스템 운영자로 커리어 패스가 아예 잡혀 버려서 복귀 이 후 다른 분야로 옮기는 것도 쉬워 보이지는 않았다. 그렇다고 이직을 하자니 아직 업무 경력이 3년 밖에 안되었고, 막상 이직 하려고 해도 비슷한 분야로 갈 것 같았다. 그래서 친하게 지내던 선배와 이런저런 고민 상담을 했었는데, 알고.. 2017. 1. 5.
[나의 퇴사 이야기] #3 슬럼프 : 끊임없는 야근과 갑질 이번 포스팅 시리즈는 개발자 커리어를 갖게 된 계기와 퇴사를 하고 1인 개발자로 나서게 된 사연에 대한 이야기입니다. 일기 형식으로 6회에 걸쳐 연재하였고, 혹시 저와 비슷한 진로를 생각하시는 분들에게 참고가 되었으면 좋겠네요. #3 슬럼프 : 끊임없는 야근과 갑질 입사 이 후 2년 동안은 정말 정신 없이 지냈다. 그러다 3년 차를 맞이하면서 드디어 슬럼프가 찾아오기 시작했다. 당시에 시스템 개선 요구 건이 폭주하기 시작했고, 엎친데 덮친격으로 시스템 장애가 이곳 저곳에서 발생하기 시작했다. 내가 맡고 있던 부분은 전체 시스템 중 물류/자재와 관련된 영역이었다. 시스템에는 물류, 자재 외에도 재무, 고객관리, 서비스 영역 등 다른 사람들이 담당하고 있는 영역도 있었다. 대략 15명 정도의 개발자가 하나의.. 2017. 1. 5.
[나의 퇴사 이야기] #2 신입사원 : 배워야 하는 것이 산더미 이번 포스팅 시리즈는 개발자 커리어를 갖게 된 계기와 퇴사를 하고 1인 개발자로 나서게 된 사연에 대한 이야기입니다. 일기 형식으로 6회에 걸쳐 연재하였고, 혹시 저와 비슷한 진로를 생각하시는 분들에게 참고가 되었으면 좋겠네요. #2 신입사원 : 배워야 하는 것이 산더미 2010년의 시작은 굉장히 산뜻했다. 잠시 헤어졌던 여자친구와도 재회했고, 비록 취업 고민에 많은 스트레스를 받았지만 다행히 취직에 성공할 수 있었다. 거기다가 내가 그 동안 원하던 분야로 취직이 되어 묵었던 체증이 한꺼번에 내려간 느낌이었다. 그렇게 회사에 합격하고 한동안 그룹사 교육과 각종 신입사원 교육에 정신 없이 4~5개월을 보냈다. 새로운 친구들도 많이 사귀었고, 입사동기들과의 모임도 재미있었다. 한 2~3주 동안은 동기모임이 .. 2017. 1. 5.
[진로고민] 직장인 컴퓨터 공학 전공 학사학위 취득 서울에 있는 4년제 대학교에서 도시공학 전공으로 학사학위를 취득하고 비전공자 전형으로 운 좋게 국내 IT 회사에 입사하여 약 6년간 다양한 프로젝트를 경험하고 개발 업무를 하고 있다. 그러다가 미국에서 공부하고 있는 와이프와 함께 하기 위해서, 올해 회사를 그만두고 미국으로 갈 예정이다. 그리고 미국으로 건너간 뒤 1년 정도 1인 개발자자로서 경제적 자립을 도전해보고 만약 1인 개발자로서의 도전이 경제적 여건 때문에 어려워진다면... 미국 현지에 있는 IT 업체 취업을 해야할 수도 있다. (아니면 정말 식당서빙이나 편의점 알바를 해야할지도 모른다) 그런데 미국에서의 IT 관련 job 포스팅 상 자격요건에 컴퓨터 또는 IT 관련 학사학위 (Bachelor's Degree) 를 요구하고 있다. 그래서 지금이.. 2016. 7. 16.
[SI업계] 도급, 파견 관련 정리 SI 업계에서는 도급, 파견과 관련된 용어가 많이 쓰인다.만약 본인이 도급 계약의 주체이거나 파견근로자인 경우 이러한 내용에 대해서 어느정도 숙지할 필요가 있다. 1. 도급과 파견의 구분 도급과 파견의 차이는 작업지시에 대한 지휘/명령관계의 실체, 근로자 개별 관리/감독권에 있다. 만약 파견으로 간주되는 경우 파견근로자 보호에 관한 법률(이하 파견법) 이 적용된다. 출처 : http://www.nodong.or.kr/ 파견근로자 보호에 관한 법률에 따르면, 총 파견기간은 2년을 초과할 수 없다.(중간마다 2~3개월의 공백도 연속기간으로 인정함) 그리고 동일사업장의 동종/유사 업무에 종사하는 정규직 근로자와 임금, 근로조건에 있어 합리적 이유 없는 차별을 금지한다. 만약 불법파견으로 적발될 경우 파견근로자.. 2016. 7. 13.