Hongveloper

    카카오페이 경력 공채 합격 후기

    예전부터 마음 속에 항상 네카라쿠배 중 하나의 회사에 가고 싶은 욕심이 있었습니다. 네카라쿠배뿐만 아니라 이외의 많은 회사에 지원하고 탈락하였지만 포기하지 않고 할 수 있다라는 생각으로 노력한 끝에 좋은 결과를 얻을 수 있었던 것 같습니다. 매번 다른 사람들의 합격 후기를 보면서 부러움과 동시에 많은 자극을 받아 갔었는데 지금 생각해보면 합격 후기 글이 나태해진 스스로를 다시금 정신차리게 하는데 꽤나 효과가 있었던 것 같습니다. 미래의 내가 프로그램 개발에 권태기를 겪고 있을 때 해당 글을 읽으면서 다시 제자리로 돌아갈 수 있으면 좋겠다라는 마음가짐으로 합격 후기를 남겨보고자 합니다. 내 경력 되돌아보기 2017년에 티몬이라는 커머스 회사에 처음 입사하였습니다. 인턴으로 입사하여 정규직으로 전환이 되었는..

    AWS EC2 Java 설치

    Java 설치 가능한 리스트 검색 yum list java* 로컬 개발 환경에서 java11 버전을 사용하고 있기 때문에 java-11-amazon-corretto.x86_64를 설치합니다. 설치 sudo yum install java-11-amazon-corretto.x86_64 확인 java -version

    취해있으면 기회가 와도 잡을 수가 없다.

    요즘 난 조금 취해있는 것 같다. 그게 꼭 알콜이 들어간 어떤 것에 취해 있는 것은 아니다. 시간을 허투루 보내고 있다. 무기력함에 취해 있는 것이다. 왜 난 지금 취해있을까? 지금 이렇게 허송세월을 보내고 있어도 괜찮을걸까? 무엇이 날 이렇게 만들었을까? 난 분명 3주전까지 최선을 다해서 살고 있었다. 그리고 그렇게 가고 싶었던 네이버 최종면접에서 탈락하고 어떤 점이 부족한지를 명확하게 파악해서 더 좋은 곳에 가겠다고 다짐했다. 그렇게 노션에 계획이란 계획은 다 세워놓고 지금 나는 멍하게 취해있다. 요즘 노력이란 단어가 무색할 만큼 세상이 많이 변했다. 노력이란 단어로 이제는 엄청나게 올라버린 집값을 따라잡을 수는 없다. 그렇다고 아무것도 안하고 있을 순 없다. 취해있으면 기회가 와도 잡을 수가 없다...

    1. 도메인 모델 시작

    1.1 도메인이란? 내가 만들고 있느 서비스 혹은 소프트웨어가 영향력을 미치는 곳이며 즉 소프트웨어가 어떠한 문제를 해결하고자 하는 영역을 말합니다. 도메인은 다시 하위 도메인으로 나눌 수 있습니다. 하지만 도메인마다 모두 고정된 하위 도메인이 존재하는 것은 아닙니다. 쇼핑몰을 운영하고 있다면, E-Commerce가 나의 도메인 영역이 되는 것입니다. 그리고 쇼핑몰은 회원, 카테고리, 주문, 상품 등의 하위 도메인이 존재합니다. 모든 온라인 쇼핑몰이 고객 혜택을 제공하지 않으며 규모가 작은 업체는 엑셀과 같은 도구를 이용해서 수작업으로 정산을 처리할 수도 있습니다. 1.2 도메인 전문가와 개발자 간 지식 공유 코딩에 앞서 요구사항을 올바르게 이해하는 것이 중요합니다. 요구사항을 제대로 이해하지 않으면 변..

    JWT란?

    JSON Web Token 이란? JSON Web Token은 아래와 같은 형태로 보여집니다. (가독성을 위해서 개행이 포함됐습니다.) eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9. eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWV9. TJVA95OrM7E2cBab30RMHrHDcEfxjoYZgeFONFh7HgQ 위 문자열은 아주 간결하고, claim들을 출력(표현)할 수 있도록 대표하며, 문자열 자체의 진위를 검증하는 서명을 포함하고 있습니다. JWT("jot")는 당사자 간(Server ↔ Client, MSA 등)에 정보(claims)를 JSON 객체로 안전하게 전송하기 위한 간결한 개방형 표준(RFC 75..

    [프로그래머스] 124나라의 숫자

    [124나라의 숫자] https://programmers.co.kr/learn/courses/30/lessons/12899 풀고 느낀점 내 머리로 풀 수 없는 문제였습니다. 한 2시간 고민하다가 구글링해서 풀이법을 봤습니다. Level 2 문제였는데 풀지 못하니 살짝 현타가 왔습니다. 3진법을 응용한 문제였습니다. 10진법의 값을 몫이 0일때까지 나누다가 나머지가 0인 경우 4로 대체하고 몫을 1만큼 빼주면 됩니다. 좀 더 내공을 쌓아야할 것 같습니다. /** * 124나라의 숫자 * https://programmers.co.kr/learn/courses/30/lessons/12899 */ public class P_12899 { public static void main(String[] args) { ..

    [프로그래머스] 행렬의 곱셈

    [행렬의 곱셈] https://programmers.co.kr/learn/courses/30/lessons/12949 풀고 느낀점 오랜만에 코테를 풀어서 그런지 생각보다 오래걸렸습니다. 한참 코테 문제를 풀 때 잘 안풀리면 무조건 디버그를 돌려서 차근 차근 보자라는 원칙이 있었는데 망각하고 머리속으로 계속 상상하면서 푸니까 더 오래 걸린 것 같습니다. 나중엔 결국 디버그 돌려서 풀었습니다. 갑자기 드는 생각인데 개발 툴 도움 없이는 절대 문제를 풀지 못할 것 같다는 생각이 들었습니다. 진짜 잘푸는 사람보면 툴 도움 없이 그냥 크롬에서 풀던데 그 경지는 절대 못갈 것 같습니다. 다시 일주일에 3코테 목표를 세웠습니다. 이직을 하고 나서 꽤 소홀했는데 다시 정신차려야할 것 같습니다. /** * 2차원 행렬 ..

    [프로그래머스] 더 맵게

    [더 맵게] programmers.co.kr/learn/courses/30/lessons/42626 풀고 느낀점 더 맵게는 쉽게 풀었습니다. 다른 Level2 정도의 문제보다 쉬워서 당황했습니다. 아니면... 제가 그만큼 실력이 향상된 것일까요? 그랬으면 좋을 것 같습니다. 풀이 방식은 우선순위 큐(힙)에다가 scoville 배열의 값을 하나씩 넣어줍니다. 그럼 heap은 우선순위에 맞게 정렬이 됩니다. heap에서 하나씩 데이터를 꺼내보면서 K보다 값이 작은지만 체크합니다. 작다면 섞은 음식의 스코빌 지수를 계산하는 공식을 적용해서 다시 heap에 넣어줍니다. K이상일 때 까지 반복합니다. package algorithms.online.programmers.heap; import java.util.Pr..

    [프로그래머스] 메뉴 리뉴얼

    [메뉴 리뉴얼] programmers.co.kr/learn/courses/30/lessons/72411 풀고 느낀점 이전부터 조합문제를 많이 풀고 있어서 그런지 생각보다 많이 어렵진 않았습니다. orders 배열로 들어온 문자열 배열에 대해서 나올 수 있는 조합을 구합니다. 예를 들어 1번 손님의 경우 [] [A] [B] [C] [F] [G] [A, B] [A, C] ...... 이렇게 나올 것입니다. 2번, 3번 손님도 마찬가지 입니다. 그리고 course 배열을 순회 돌면서 아까 구한 조합에서 course 개수랑 같은 개수를 가진 조합을 빼냅니다. course 의 값이 2이면, 1번 손님의 경우는 [A, B] [A, C] [A, F] .... 가 됩니다. 그리고 2번 손님, 3번 손님으로도 마찬가지로..

    [프로그래머스] 베스트앨범

    [베스트앨범] programmers.co.kr/learn/courses/30/lessons/42579 풀고 느낀점 프로그래머스 문제 설명이 상당히 불친절 한 것 같습니다. 다른 문제를 가져다가 번역을 한 것 같은데, 몇몇 설명이 누락된 부분도 있는 것 같습니다. 이번 문제를 읽고 예시를 봐도 return값이 왜 저렇게 나오는지 이해가 안되었습니다. 그래서 이번에도 문제 설명에 대한 힌트만 봤는데 각 장르마다 최대 2개씩 뽑는 부분이 설명에 빠져있었습니다. 계속 프로그래머스에서 코테연습을 진행해야할지 의문입니다. 그래도 카**에서 프로그래머스 플랫폼을 사용하니까 어쩔 수 없이 해당 사이트에서 연습을 진행해야할 것 같습니다. 문제 난이도는 중(?)정도였습니다. 그냥 자료구조 잘써서 잘 정렬해서 상위 2개 뽑..