Who am I 👨‍💻

  • 👨‍💻 소통하는 개발자, 김민준

    김 민 준 Backend developer. Contact. Email : minjun.kim.mj@gmail.com Channel. GitHub LinkedIn Resume click👆🏻 Introduce. 3년차 개발자로서 백앤드 개발 및 devops를 함게 겸하였습니다. 주로 웹 서비스의 백앤드 개발을 담당하였으며 AWS, K8S등 devops도 겸업하였습니다. 작은 규모의 팀에서 주도적으로 팀장같은 역할을 맡기도 하며 디자인과 고객 관리팀과의 협업을 주도적으로 진행하여 CAPA 서비스의 오픈을 책임졌던 경험이 있습니다. 비지니스의 이해를 바탕으로 개발하는것을 좋아합니다. 이를 위해 작은 단위로 빠르게 개발하고 배포하여 유저의 니즈를 빠르게 반영하며 서비스의 품질과 만족도를 높여서 실질적인 비지니스..

최신글

  • [Mac OS, Mysql] error: 'Can't connect to local MySQL server through socket '/tmp/mysql.sock' 에러

    brew install mysql로 설치하고 실행을 하려하니 error: 'Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2) 에러가 발생했다. 이유는 mysql이 실행이 되고있지 않아서인데, mysql.server start을 입력하면 간단히 실행된다

  • 암걸린_개발자 - <3> 살아갈거면 살아야지.

    이전 이야기 3줄 요약 MRI를 찍어보니 조직검사각. 조직검사 해보니 암임. 치료 받을 병원을 고름 이번 이야기 3줄 요약 방사선 치료 시작함 스터디 만을어서 운영함 크기가 줄어들음 방사선 치료? 방사선 치료 뭔가 듣기만 해도 후들거리고, 엄청 아플꺼 같고, 머리는 다빠질것 같은 이름이다. 체르노빌과 우라늄이 생각나고, 뭔가 암을 죽이기 위해 넘으면 안되는 강을 건너는 느낌이지 않은가? 사실 그렇지않다. 방사선과 방사능은 조금 다른 개념이라는걸 알게되었다. 기본적으로 방사가 되는 능력이 방사능이고, 거기서 나오는 선이 방사선이다. 즉, 좀쎈 X-ray를 쏜다고 생각하면된다. 1번 치료에 누워서 한 5분?정도 가만히 있으면 방사선 치료기가 방사선 치료를 진행하는데, 큰 느낌은 없다. 이렇게 2달을 치료를 ..

  • 암걸린_개발자 - <2> 암환자가 되다.

    이전 이야기 3줄 요약 회사 퇴사함 손목아파서 병원간김에 다리도 점검받음 이상함. 흰덩이리가 보임. MRI찍으라는 말을 들음 거의 반년만에 뒷 이야기를 쓰다니... 항상 이런저런 이유로 늦장을 부렸지만. 더는 안된다. 이제 다음 이야기를 해보도록 해보겠다. 생각해보니 읽기 귀찮은 사람도 있을꺼 같다. 그래서 바쁜 현대인을 위하여 3줄 요약을 먼저 적고 가려고한다. 이번 이야기 3줄 요약 MRI를 찍어보니 조직검사각. 조직검사 해보니 암임(ㅋ) 치료 받을 병원 고름 MRI 찍읍시다. 촉 여러분은 촉을 뭐하고 생각하는가? 나는 감히 빅데이터라고 말하겠다. 인생을 살며 수없이 겪은 경험 때문에 생각과 추론의 단계를 건너뛰고 현상과 결과가 바로 이어지는게 나는 촉이라 생각한다. 이 얘기를 왜하는지 의아할꺼다. ..

  • [ROW_NUMBER()]컬럼에 1씩 증가하는 숫자 추가

    이번에 sql에 새로운 컬럼을 추가해야 하는데, 특정한값을 기준으로 1부터 증가하는 값이 존재하는 컬럼을 만들어야 했다. 바로 컨텐츠의 에피소드의 챕터숫자를 추가해야한다. 컨텐츠는 여러개의 에피소드를 가지고 있다. 에피소드는 여러개의 챕터를 가지고있고, 1부터 시작한다. 위와 같은 조건으로 increase가 되는 값을 입력을 해야하는데 문제점은 이미 insert되어있는 데이터에 추가를 하는것이기에 쉽지가 않았다. 결론적으로는 아래와 같은 sql문으로 해결했다. update episode as e,( select ROW_NUMBER() OVER(PARTITION BY content_id ORDER BY created_at) as chapter, id from episode order by content_i..

  • 300명 넘는 소프트웨어 마에스트로 13기 오픈 톡방을 만들다

    오픈 톡방을 만들다 때는 바야흐로 2021년 12월 말, 소프트웨어 마에스트로에 지원을 하겠다는 결심으로 열심히 알고리즘 공부를 하고있었습니다. 여러 소프트웨어 마에스트로 12기 후기를 보던중 ‘오픈톡방에서 준비했다’ 라는 글을 읽었는데,오픈톡방을 찾아봐도 13기 준비방이 없었습니다. 그래서 없으면 내가 만들기로 했습니다. 나의 개발자로서의 무기중 하나는 ‘커뮤니케이션이 잘 되고 팀에 잘 스며드는 개발자’라고 생각합니다. 이러한 강점은 여러 모임에 참여하고 함께 무언가를 만들어 가면서도 길러지지만, 직접 기획하고 사람을 모아보며 리딩 해보는 경험 역시 매우 중요하다고 생각합니다. 그런데 안 만들 이유가 없지 않을까?라는 생각이 들었습니다. 또, ToGather라는 스터디 그룹을 운영해보며 쌓은 경험이 있..

인기글

  • node.js crypto를 이용한 random string 얻는법

    node.js에는 많은 기본제공 모듈이 있다. 그중에서 암호화,복호화 기능을 제공하는 crypto 모듈을 이용해서 랜덤 스크링을 얻을수 있는 방법이있어서 소개해 주려한다 랜덤 스트링의 경우 환경설정등의 key 값으로 종종 사용되기에 알아두면 편리하다 코드는 매우 간단하다 const crypto = require("crypto"); console.log(crypto.randomBytes(20).toString('hex')) 위와 같이 몇줄 안되는 소스로 영어 소문자+숫자의 랜덤스트링을 얻을수 있다. f39bf14f62922b8c054e5781aaa806e4f5ad4a39 console.log(crypto.randomBytes(20).toString('base64')) hex 에서 base64로 바꾸게 되면..

  • express-validator 에서 array 내부 object 검증 하는법

    express-validator 라는 모듈은 미리 명시해준 기준에 따라 검증을 할수있게 해주는 모듈입니다. 예를 들어 body에 전달되는 값중 age 이라는 키의 값이 반드시 Integer형만 와야 한다고 한다면 body('age').isInt() 라고 표현해주면 body에 전달되는 값중 age는 반드시 숫자형이 와야 한다는 뜻이고 아닐경우 핸들링 해주는 기능을 제공합니다. 더 자세한 내용은 이번 글에서 다룰내용이 아니기에 API Document 링크를 첨부합니다 -> https://express-validator.github.io/docs/validation-chain-api.html#isstring 이번글의 주제는 만일에 Array 내부에 들어가는 object의 값을 검사하고 싶으면 그러면 어떻게 해..

  • [Node.js | PHP] php 페이지 와 nodejs 페이지 사이 데이터 전달

    php 페이지 에서 nodejs 페이지로 데이터 전달 php 페이지 와 nodejs 페이지 사이 데이터 전달 오늘의 문제는 이거였다.(외않되…) 본인인증 서비스를 페이지에 이용하는데 이 서비스 모듈은 php 버전으로는 있지만, node js 로는 없어서 어떻게든 해결을 해야만 했다.그 방법으로 생각해낸것이 Nodejs 페이지 에서 요청을 php 로 보낸뒤, php 페이지 에서 결과값을 만든뒤 그값만 nodejs 페이지 에서 가져오도록 하는것이었다.말이어렵지만 정리하자면, 보이는건 nodejs로 만든 페이지(local) 이지만 nodejs 에서 전송하는데 필요한 값은 php로 만든 페이지 (다른 서버) 에서 가져와야하는 상황이었다. NOTICE : 3줄 요약은 글 마지막에 있습니다. 문제점 여기서 또 흥미..

  • [Mac OS, Mysql] error: 'Can't connect to local MySQL server through socket '/tmp/mysql.sock' 에러

    brew install mysql로 설치하고 실행을 하려하니 error: 'Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2) 에러가 발생했다. 이유는 mysql이 실행이 되고있지 않아서인데, mysql.server start을 입력하면 간단히 실행된다

  • [ROW_NUMBER()]컬럼에 1씩 증가하는 숫자 추가

    이번에 sql에 새로운 컬럼을 추가해야 하는데, 특정한값을 기준으로 1부터 증가하는 값이 존재하는 컬럼을 만들어야 했다. 바로 컨텐츠의 에피소드의 챕터숫자를 추가해야한다. 컨텐츠는 여러개의 에피소드를 가지고 있다. 에피소드는 여러개의 챕터를 가지고있고, 1부터 시작한다. 위와 같은 조건으로 increase가 되는 값을 입력을 해야하는데 문제점은 이미 insert되어있는 데이터에 추가를 하는것이기에 쉽지가 않았다. 결론적으로는 아래와 같은 sql문으로 해결했다. update episode as e,( select ROW_NUMBER() OVER(PARTITION BY content_id ORDER BY created_at) as chapter, id from episode order by content_i..

  • [자바스크립트, TS] camel case의 object key를 snake case로 바꾸기

    개발을 진행하다 Hasura에 query의 결과값으로 받아오는 object의 key가 snake case인데 실제 개발 컨벤션은 camel case여서 코드내에서 query한 결과값을 insert할때 다시 넣어줘야 하는 번거로움이 있었다. const originalSnake = { hello_world: "hihi", hi_there: "hi there", }; const insertObject = { helloWorld: originalSnake.hello_world, hiThere: originalSnake.hi_there, }; console.log(originalSnake); console.log(insertObject); /* { hello_world: 'hihi', hi_there: 'hi t..