본문 바로가기

전체 글172

쿠팡 인천 14센터 허브 후기 (남자) 퇴사 후 재취업 준비하는데 모아둔 돈이 다 떨어져서 쿠팡 알바를 지원했다. 평소 무릎이 안 좋아서 다리보다는 힘을 쓴다고 하는 허브쪽으로 지원했다. 신청 2시간 만에 출근 확정을 받았고, 현장에서 입출고 지원자 중 3명이 추가로 허브로 전환된 것을 보니 허브쪽 지원자가 적은 것 같다.한가해질 때마다 여기저기 바쁜데로 팔려가긴 했는데, 가장 오래 있었던 곳은 대분류였다.대략 이런 모습이다. 위쪽 레일에서 비닐 포장된 상품들이 쏟아져 나온다. 나는 가장 처음 위치에서 서서, 카트에 있는 미분류 상품들을 추가로 레일 위의 빈 공간에 펼쳐서 올리는 역할을 담당했다. 그러면 다음 사람이 송장 라벨이 보이도록 포장지를 뒤집거나 펼치고, 마지막 2~3명이 라벨을 보고 분류하는 공정이다. 마지막 분류 과정은 일을 여러.. 2026. 6. 9.
[Kotlin] val은 불변(immutable)이 아니다. val vs varKotlin 면접 질문으로 가장 기초적인 질문이다.곧 있을 면접에 대비해 Kotlin 질문을 다시 정리하고 있다. gpt가 추천해준 첫 번째 질문으로 var과 val의 차이를 물어봤다. 이를 구글에 검색하니 약 70% 정도의 블로그가 val을 불변이라고 표현하고 있다. 과거의 나 역시 면접 때 그렇게 답변했고, 이는 "정말로 불변인가요?"라는 꼬리 질문으로 이어졌다. 그래도 꼬리 질문에는 잘 답변했다. 저렇게 답한다고 해서 감점이 되지 않겠지만 정확히 알고 있다면 이점은 될 것 같다.공식 문서에는 위와 같이 표현하고 있다. var를 mutable로 표현했으니 val은 immutable로 표현할 것 같지만 굳이 read-only라고 표현한 데에는 이유가 있다. Backing propert.. 2026. 5. 6.
[Android Compose] ModalBottomSheet에서 BackHandler 사용하기 원래 미디엄으로 블로그를 옮겼으나, 편하게 쓰는 글을 여기에 작성하려고 한다. 문제 상황내가 구현하고자 하는 UI는 바텀 시트 안에 TextField가 있는 구조였다. 바텀 시트가 올라온 뒤 키보드가 TextField 포커스가 되면 키보드가 올라오는 구조이다. 키보드가 올라온 상태에서 뒤로가기를 누르면 예상 동작은 키보드는 닫히고 바텀시트는 살아있어야 한다. 그러나 바텀시트가 먼저 닫히고 키보드가 닫혔다.@Composablefun MyBottomSheet() { val isImeVisible = WindowInsets.isImeVisible BackHandler(isImeVisible) { // 동작 안 함 } ModalBottomSheet) { //.. 2026. 4. 19.
플레이 스토어 심사 거절 (로그인 사용자 인증 정보 세부정보가 영어가 아님) 한국 사용자만을 대상으로 앱을 출시했는데, 아래와 같이 다소 황당한 안내를 받았다.구글에서 제공해준 스크린샷 확인 결과 번역의 문제로 판단된다. 로그인에 필요한 정보가 하나가 아니라 상세 정보를 통해 로그인 방법을 설명했다. 그 과정에서 "길동"과 같이 한글로 된 테스트 계정을 제공했는데, 심사 과정에서 "길동"이 아닌 "Gil-Dong"을 사용하여 문제가 되었다.그래서 내가 제공했던 정보를 영어로 재작성하여 심사를 맡길 예정이다.국제화를 대응할 생각이 없는 앱인데 왜 "모든 로그인 사용자 인증 정보의 연어 버전"을 제공해야 하나 싶긴 하다. 2025. 7. 27.
블로그 이전 공지 미디엄으로 블로그 이사 갑니다.https://medium.com/@sjy_9484 Song Junyoung – MediumRead writing from Song Junyoung on Medium. Every day, Song Junyoung and thousands of other voices read, write, and share important stories on Medium.medium.com 기술 블로그는 이전하게 되었지만, 일상적인 글은 계속 여기에 올릴지도 모르겠네요. 2025. 1. 30.
협업을 위한 GitHub 사용법 GitHub는 Git 원격 저장소를 제공하는 웹 서비스이다. 이 글에서는 그중 협업 관점에서 GitHub를 사용해 왔던 방법을 살펴본다.  HomeRepository에 처음 들어가면 기본적으로 README.md가 노출된다. 우측 패널을 보면 소개와 함께 연관된 링크를 삽입할 수 있다. 그중 Releases라는 메뉴가 있다.릴리즈 노트는 직접 작성해도 되지만, 자동 생성을 원할 경우 PR 제목을 기반으로 만들어 준다. 기본적으로는 해당 버전의 소스코드를 제공하지만, 추가 파일을 첨부하여 각 버전 별 APK(안드로이드 설치 파일)를 제공하기도 한다. 간혹 빌드 관련 파일이 Git의 추적을 받고 있는 Repository를 볼 수 있는데, 별도로 보관하는 것이 좋다. Git의 모든 파일 기록은 삭제하더라도 .g.. 2024. 9. 5.
클라이밍 4개월 후기 올해 3월에 클라이밍을 시작해서 거의 4개월이 지났고, 39회 다녀왔다. 부상은 없었는지?다행히 큰 부상은 없었다. 사소하게 자주 상처 입는 부위는 팔과 다리이다. 팔의 경우 홀드에 쓸려서 난 상처가 많고, 아프다기보다는 작은 흉터가 누적되는 게 더 신경 쓰인다. 물론 긴팔을 입거나 팔 토시를 착용할 경우 쓸리는 상처는 해결할 수 있다. 긴 바지만 입기 때문에 다리에는 쓸리는 상처가 없다. 대신 시선이 손과 발에만 집중하기 때문에 무릎을 튀어 나온 홀드에 박는 경우가 많아 자주 멍 든다.단발성(?)으로 입는 상처는 이정도이지만, 사실 클라이머는 다른 부상도 잦다. 내 경우 큰 부상은 없었지만 1~2주 정도 불편을 겪은 몇 가지가 있다. 클라이밍 1개월차에는 왼팔 전완근 부위 바깥쪽 근육이 아팠고, 얼마 .. 2024. 7. 11.
클라이밍 암장별 난이도 및 개인 기록 (08-15 수정) 새로운 암장을 갈 때면 항상 "이 암장은 색깔별 난이도가 어느정도일까"가 궁금하다. 그래서 주관적인 암장별 난이도를 기록 및 공유하기 위한 목적으로 글을 작성한다. 다만 너무 쉬운 난이도(보통 세 번째 단계 이하)는 제외했다. (새로운 암장 갈 때마다 업데이트 예정) 그리고 개인 기록은 덤. 개인 기록첫 클라이밍 : 2024.03.14, 정기권으로는 1개월 * 4번째현재 : 클라이밍 줌 남색(무지개 + 회갈.인데 갈색은 안 나옴) 클라이머. 현 세팅 기준 남색 (10/16)24.07 : 더클라임 연남, 툇마루 벽 파랑 원데이 올클.첫 클라이밍 이후에는 전신이 아팠고, 근육통 회복 기간은 일주일 정도였다. 그 이후로는 근육이 적응했는지 통상적으로 2~3일이면 회복됐다. 주로 클라이밍줌을 다니며 각 난이도별.. 2024. 5. 25.
[Android] 컴포즈 내비게이션 딥 다이브 (under the hood of Compose Navigation) 머리말이 글에서는 Compose Navigation의 내부 구조에 대해서 상세하게 다룬다. Compose Navigation 2.7.6 버전을 기준으로 작성되었으며, 최근에 추가된 2.8.0의 safe args에 대해서는 다루지 않는다. 이에 대해서는 나중에 분석하여 별개의 포스트로 업로드할 예정이다.Navigation 관련 함수와 클래스에 대해 설명하려면 필연적으로 엮여 있는 클래스도 함께 설명해야 한다. 각 클래스에 대한 모든 내용을 한 번에 설명하면 오히려 이해하는데 어렵다고 생각하여, 클래스보다는 하나의 기능 단위로 엮여 있는 클래스들을 필요한 부분만 발췌하여 설명할 예정이다. 최대한 자연스럽게 읽을 수 있도록 순서를 배치했다. 먼저 주요 클래스에 대해 간단하게 소개하고, 이후 자세하게 설명할 예.. 2024. 5. 16.