본문 바로가기

전체 글

(671)
[리뷰] 팀 개발을 위한 Git, Github 시작하기 개발자로 일하기 위해서 공통적으로 필요한 필수 스킬들이 존재하는데 그 중하나가 바로 Git이다. Git 이전에는 SVN을 많이 사용하기도 했었는데 이러한 코드를 관리하는 도구들을 일컬어 Source Code Management (SCM)이라고 부르며 실무에서는 필수적이다. 만약 이런 도구를 사용하지 않는다면 서로간에 작업한 코드를 파일로 주고 받으며 관리를 해야하기 때문에 너무 소모적이고, 위험하기 때문에 Git이든 SVN이든 사용해야 한다. 최근에는 대부분 Git을 사용하고 있고, Github과 같이 Git으로 파생된 서비스들이나 Source tree와 같은 도구들이 생겨나고 있어서 여러가지 이유로 Git을 배우는 것이 유리하다. 이런 면에서 이번에 읽어본 탬 개발을 위한 Git Github 시작하기 ..
[리뷰] bash를 활용한 사이버 보안 운영 들어가며 개발자들에게도 bash 명령을 포함한 CLI 도구의 활용은 필수 요소라고 생각한다. 특히나 클라우드로 인해 백엔드 개발자가 인프라까지 전담하는 경우도 많다보니 CLI 환경은 백엔드 개발자에게도 굉장히 밀접하다. 나는 지금껏 bash에 익숙하다고 생각해왔지만 실상을 들여다보면 기본이 많이 부족한 상태에서 서버 운영을 해왔던 것 같다. 서버에 이슈가 생겨 트러블 슈팅이 필요한 경우 원하는 정보를 수집하거나 스크립트를 작성할 때 항상 구글에 접속하여 원하는 명령어를 찾을 때까지 검색을 하는 경우가 대부분이다. 예를들어 찾고자 하는 텍스트가 포함된 파일들을 검색하고 싶은데 명령어를 만들 수 없어서 하나씩 찾을 때도 있고, find 명령을 사용한다는 것을 알고 있어도 조건을 만들지 못해 원하는 find ..
Go언어로 웹 서버 개발 시 Swagger 문서 자동 생성하기 개요 지금까지 Swagger 문서를 만드는 작업을 수작업으로 해왔는데, API가 갱신될 떄마다 반영하기가 힘들어서 매번 버전이 다른 문제가 있었다. python의 경우 장고를 사용하면 자동으로 Swagger 문서를 생성해주는 기능이 있어서 Go 언어는 없을까 하여 찾아보니 swaggo를 발견하게 되었다. Swaggo Swaggo는 주석을 활용하여 코드로 작성된 내용을 Swagger Documentation 2.0으로 변환한다. Go 언어에서 자주 사용되는 여러 웹 프레임워크를 지원하고 있고, 내가 현재 사용 중인 Echo도 역시 지원한다. 여기서는 Echo Framework를 기준으로 설명한다. Swaggo를 사용하기 위해서는 먼저 CLI 도구가 필수적으로 필요하다. 아래 go get 명령을 사용하여 간..
[리뷰] Head First Go 어느덧 Go언어를 사용한지 2년이 되었다. Java 언어로 개발을 해오다가 처음 Go 언어를 접했을 때 어떤 부분은 C와 비슷하기도 하고 Java와 비슷한 부분도 있어서 혼란스러운 부분이 많았었다. 특히 포인터를 활용하는 부분에 있어서는 예전에 C++을 했던 기억으로 내가 느끼기에는 Syntax가 애매모호한 부분들이 있었다. Head First Go 책에도 포함된 내용이긴 하지만 내가 느꼈던 혼란은 Go 언어 자체적으로 편의를 위해 제공되는 것들이 꽤 있었기 때문이었다. 예를 들어 구조체 포인터인 경우 정상적으로 포인터를 참조하려면 (*pointer).value 와 같이 참조를 해야할 것 같은데 pointer.value로도 참조가 가능하고, 생성하지 않아 nil 값인 슬라이스를 내장 함수에 전달할 경우 ..
[리뷰] 개발자의 디자인 독해력 언제나 관심은 가지고 있지만 나에겐 너무 어렵게만 느껴지는 것이 바로 디자인이다. 그 동안 백엔드 개발자로 일해왔기 때문에 디자인에 신경쓸만한 일이 거의 없었지만 최근에는 풀스택 개발자로 업무를 하면서 백엔드에 비해서는 적은 비중을 차지하긴 하지만 디자인도 신경을 쓰며 개발을 해야했다. 기능이 아무리 좋아도, 때깔이 별로면 사용자들은 사용하기를 꺼려한다. 심지어 외부에 공개되지 않는 사내 시스템 조차 UI/UX가 별로면 사용하고 싶은 마음이 사라진다. 그러니 일반 사용자에게 제공되는 웹 서비스나 어플리케이션들은 오죽할까 이 책을 읽기 전까지는 디자인은 개발자에게는 너무 어렵고 거리가 먼 업무라고 생각해왔다. 개발자가 이 정도 디자인 했으면 잘한거지 하면서 스스로 위안을 하기도 하고, 개발을 할 때도 항상..
[리뷰] 개발 7년차, 매니저 1일차 책 제목을 보는 순간 개발 8년차인 나와 비슷한 눈높이에서 많은 조언을 얻을 수 있을 것 같다는 생각이 들었다. 사실 나는 아직 매니저 역할은 하지 않고 있고, 아직 먼 얘기라고 생각하고 있지만 나와 비슷한 연차에서 매니징을 하시는 분들도 많기 때문에 그 분들은 어떤 고민을 하고 있을지 또 어떤 판단과 결정을 내리고 있는지 궁금했다. 책을 읽으면서 매니저에 대해 내가 생각하지 못했던 부분들이 참 많다라는 것을 느꼈다. 그 동안은 매니징을 받는 입장이었기 때문에 매니저 입장에서는 거의 생각을 해본적이 없었던 것 같다. 왜 팀장님은 저런 지시를 내리고 지난 번에는 이 업무가 꼭 필요하다는 듯이 얘기했으면서 갑자기 우선순위가 떨어지니 다른 업무를 먼저 하라는 지시를 내리는 것인가, 그리고 왜 내 일정은 고려하..
[리뷰] Vue.js 코딩 공작소 들어가며 요즘 세미나나 스터디에 참여하다보면 프론트엔드와 백엔드를 둘 다 하고 계신 분들이 참 많다. 나 또한 백엔드 개발만 해오다가 얼마전부터 프론트엔드까지 하게 되어 굉장히 힘든 나날을 보내고 있다. 한번에 사용해야 하는 언어도 여러가지이고 사상도 달라서 개발 중간 중간 헷갈릴 때가 많다. 내 생각에는 아직 백엔드에 비해 프론트엔드에 대한 기본 지식이 부족해서 인 것 같다. 백엔드도 굉장히 발전히 빠르고 공부할 것들이 넘쳐나기 때문에 둘 다의 트렌드를 따라가기에는 쉽지 않은 것이 사실이다. 이런 상황이다 보니 나의 프론트엔드에 대한 목표는 먼저 자바스크립트 기본을 익히고, 잘 만들어진 것들을 가져다 잘 사용하는 것이었다. 개발을 하다보면 가장 힘든 부분이 초반에 프로젝트 구조를 어떻게 잡고, 유지보수..
[리뷰] 나는 LINE 개발자입니다 얼마전부터 페북 타임라인에 나는 LINE 개발자 입니다 책의 출간 소식이 간간히 들려오고 주변 지인들의 리뷰 내용들이 이어지면서 읽어보고 싶은 생각이 들었다. LINE에서의 생활이나 LINE에서 겪었던 경험담이 주를 이룰 것이라는 생각과는 달리 LINE에서의 업무 뿐만 아니라 집필하신 동종 업계 선배님들의 주옥같은 경험담이 담겨져 있었다. 처음부터 끝까지 시간가는 줄 모르고 재미있게 읽었던 것 같다. 책은 다음 4가지 주제로 나뉘어 있고, 각 주제별로 다양한 집필자들의 경험담들이 녹아있다. 1부부터 라인 개발자의 일상이라는 주제로 시작하지만 사실 내용은 신입 시절부터 라인에 오기까지의 과정과 라인에서의 업무까지 포함되어 있다. 다른 주제들도 주제에 대한 내용을 커다란 틀로 내용을 이어가지만 대부분은 자신..