우리 팀원이 나에게 한 말이 있다. 내가 만약 QA였다면 매년 성과 1등이었을 것 같다고. 스스로가 인정할 정도로 결함을 잘 찾는 편인데 결함을 발견하는 것에서 끝이 아니라 꼭 그 개발자나 사측에 결함보고를 했다. 결함 뿐만 아니라 내가 불편하다고 생각되는 점들이 있으면 사측에 꼭 문의글을 남겼다. 마이리얼트립 여행 준비를 위해 마이리얼트립을 이용했었는데 아이패드 가로모드로 숙소 탭 조회시 화면이 깨져보이는 건, 푸시알림에서 내용 누락이 발생한 건, 데이트피커의 날짜가 NaN으로 표시되는 건(이건 현재 캡처해둔 사진자료를 찾을 수 없다.) 등을 보고했었다. 배달의 민족 배달의 민족에 '함께주문'이라는 기능이 처음 나왔을 때 항상 점심을 같이 시켜먹던 팀원들에게 함께주문 기능을 이용해보자고 하고, 주문 완..
https://www.ajunews.com/view/20230714112413668 개발자 컨퍼런스 '인프콘 2023' 사전 신청에만 8700명 몰려 | 아주경제라이프타임 커리어 플랫폼 인프런의 오프라인 컨퍼런스 ‘인프콘 2023’(이하 인프콘) 참가 신청에 8700명 넘는 인원이 몰렸다.‘배우고 나누고 성장하세요’를 슬로건으로 내세운 인프콘은 작년www.ajunews.com 올해로 개최 두해째가 되는 인프콘. 사전 신청에만 8,700여명이 신청했다고 한다. 그런데 그중 1,300여명만 당첨되어 갈 수 있었고, 내가 당첨되었다! 당첨됐다는 문자를 회사에서 확인했는데 진짜 육성으로 소리질렀다. 작년엔 못 갔는데 올해는 간다! 그리고 드디어 8월 15일. 등록 시작이 9시부터여서 9시에 딱 도착했는데 벌써 ..
https://www.yes24.com/Product/Goods/102819435 가상 면접 사례로 배우는 대규모 시스템 설계 기초 - 예스24 “페이스북의 뉴스 피드나 메신저, 유튜브, 구글 드라이브 같은 대규모 시스템은 어떻게 설계할까?”IT 경력자라도 느닷없이 대규모 시스템을 설계하려고 하면 막막하다고 느낄 수 있다. 특히나 www.yes24.com 이 책 드디어 다 읽었다! 그렇게 막 두껍지는 않은데 회사 다니면서 이것 저것 하느라 읽는 데 시간이 좀 걸렸다. 주된 내용은 대규모 시스템 설계할 때 어떻게 접근해야하는지 면접의 상황을 빌려서 풀어가는 것이다. 처리율 제한 장치, 안정 해시, 키-값 저장소, 유일 ID 생성기, URL 단축기, 웹 크롤러, 알림 시스템, 뉴스 피드 시스템, 채팅 시스템..
우선 수료증 인증! 한가롭던 어느 날, 인프런에 라는 강의가 나온 걸 알게 됐고 "이건 사야해!"하면서 바로 구매했다. 그리고 요즘 시간이 좀 남아서 각잡고 하루만에 다 들어버렸다.(시작일이 24일로 되어 있는데 그건 사고 바로 확인하려고 들은 것) 나는 리눅스에 대해 잘 알지 못해서 업무상 어려움을 느낀 적이 꽤 있다. 물론 명령어야 외우면 되니 그래도 어느 정도 리눅스를 사용한다고 할 수 있는데, 리눅스의 성능에 대해서 물어보면 항상 물음표였다. 이 포스트(https://dakafakadev.tistory.com/201)에서도 알 수 있듯이 메모리를 과도하게 사용하고 있는 이슈가 발생했을 때 일일이 다 물어가며 배웠다. 나에게 서버에 뭔가 문제가 생겨서 뭐가 문제인지 찾아보라고 하면 어려워서 노트북을..
KEEP 제각각이던 통계정책을 정리했다. 기존에 정리 안되어 있던 부분을 정리하니 내용을 더 파악하기 쉬웠다. CountDownLatch에 대해 공부했었는데, 그 내용을 프로젝트에 적용해볼 수 있었다.(https://dakafakadev.tistory.com/220) 배우기에만 그치지 않고 이렇게 실무에 적용하는 것이 좋다. 원래 문서작업은 각자 하고 취합을 따로 하는 방식이었는데, MS제품의 공유 기능을 사용해보자고 제안했고 결과적으로 문서작업에 드는 시간을 단축할 수 있었다.(https://dakafakadev.tistory.com/208) PROBLEM 통계 쿼리 때문에 어려움을 겪었다. 그래도 문제있는 쿼리가 있다면 어떻게 접근해야할지 경험해볼 수 있는 기회였다. 계속 비슷한 업무(CRUD)가 반..
자바에서 스트림은 연속적인 데이터를 순차적으로 처리한다. 그런데 효율을 위해 멀티코어를 사용하여 병렬스트림으로 처리하는 경우가 있다. 이때 병렬스트림이 내부적으로 어떻게 동작하는지 알아보고자 한다. 병렬스트림은 각각 스레드에서 데이터를 처리할 수 있도록 스트림 요소를 여러 청크로 나눈다. 여기서 청크란 무엇일까? 청크는 스트림 요소를 작은 단위로 분할하는 단위이다. 예를 들어, ["hello", "judy", "smile"] 이 있다고 하자. 그러면 각각 "hello", "judy", "smile"처럼 세 가지로 분할하여 처리하는 것이 효율적일 것이다. 그런데 데이터가 엄청 많다고 하자. 그럴 때는 ["hello", "judy", "smile"]를 하나의 청크로 하여 스레드에 넘겨주는 것이 효율적일 것이..