박현수

iOS Developer

1995.03.06 010-2004-6565 gustn3965@naver.com

팀 내에서 반복적으로 발생하는 문제를 개선하거나 자동화하는 작업에도 적극적으로 관심을 가지고 있습니다.

단순 개발을 넘어 사용자 입장에서 고민하고 많은 의견을 내면서 카카오톡, 카카오맵 서비스를 만들어왔습니다.

실무진에서 침묵하기보다는 저의 말 한마디로 인해 사용자들에게 더 나은 서비스를 제공할 수 있다는 믿음을 가지고 행동하고 있습니다.

학력

호서대학교 통계학과 학사 졸업

2014 ~ 2020

경력

카카오

2021.11 ~ 현재
카카오맵 iOS Developer
2025.01 ~ 현재
카카오톡 macOS Developer
2021.11 ~ 2024.12

프로젝트 (카카오맵)

Jenkins 이용한 빌드 업로드 자동화 2025.08 ~ 2025.09

사내 배포 시스템에서 배포된 빌드를 Apple Developer로의 반복적 수작업 업로드를 없애기 위해 완전 자동화 파이프라인을 자발적으로 설계·구축

주요 업무
  • 사내 인프라를 사용하여 서버 구축 및 Jenkins, fastlane 사용
성과:
자동화로 인한 생산성 향상 (연간 60시간 생산성 향상 = 30분 x 10번 x 12개월)
프로젝트 번역시트 개선 2025.07 ~ 2025.08
번역시트 자동화
  • 구글시트 기반 번역 문구를 프로젝트에 반영하는 과정이 복잡하다는 문제를 해결하기 위해 자발적으로 하나의 명령어로 개선
누락된 번역 검사
  • 하나의 번역시트에서 다양한 스쿼드에서 작업하다보니 번역 키가 사라지는 이슈가 종종 발생해지면서 릴리즈전에 검사하는 코드 구현
성과:
자동화로 인한 생산성 향상 (연간 60시간 = 5분 x 5번 x 12명 x 12개월)
Tuist 모듈 계층 부여 2025.07

모듈 수가 증가하며 발생한 역할 모호함과 같은 계층의 의존성 참조 방지를 위해 자발적으로 검증하는 코드 구현

주요 업무
  • SwiftSyntax를 이용하여 코드 분석 및 Tuist 코드 수정
성과:
Tuist로 프로젝트 생성시 검증하도록 하고, 각 계층별로 어떤 모듈이 있는지 시각적으로 바로 확인 가능
장소상세 기능 개발 2025.05 ~ 진행중
디자인 개편 및 UI 구현
  • SwiftUI를 이용한 부드러운 UI 전환 및 성능 개선
동영상 후기 첨부 기능, 썸네일 재생 추가
  • 동영상 플랫폼과 주도적으로 협업하여 스펙 기여
  • 사용자 데이터 민감성 제안하여 스펙 기여
성과:
UI 성능 끊김 개선 및 CPU 70% → 50%로 감소
광고 MoM 59% 증가
의존성 분리 리팩토링 진행하여 안정성 향상 및 개발시간 단축
장소상세 스크린샷
포토피커 리팩토링 2025.04 ~ 2025.05

카카오맵에서는 후기를 작성하는 등 사용자 사진첩에 접근하여 사진을 선택하는 UI가 있지만 오랫동안 방치되어 복잡도가 높았던 포토피커 코드를 자발적으로 개선

주요 업무
  • 오래되어 기획서가 없었고, 기존과 동일한 스팩이 되도록 코드 분석 및 설계
  • 의존성 분리하여 모듈로 구현 및 샘플앱 구현
  • 수만장 기준으로 성능 테스트
성과:
클린아키텍처 기반으로 재구성하고 SwiftUI로 구현하여 유지보수성과 확장성을 크게 향상
수만장일때 진입시 속도 개선 (8초 -> 3초)
포토피커 스크린샷
인증서 자동화 2025.01 ~ 2025.02

팀원 규모 확대에 따라 인증서 관리가 비효율적으로 변하여 개선

주요 업무
  • 기존 automatic으로 관리하던 인증서 방식을 manual로 변경하고 프로젝트 세팅 파일 수정
  • fastlane을 이용하여 인증서를 공유할 수 있도록 적용
성과:
automatic signing 방식에서는 인원이 10명까지 밖에 사용하지 못했지만 fastlane으로 공유하면서 인원 제한이 없어지고, iOS직군 이외 맵 엔진 개발자들도 빌드 가능

프로젝트 (카카오톡)

Tuist 도입 시도 2024.09 ~ 2024.12

프로젝트를 Xcode로 관리하지 않고, Tuist를 이용하여 프로젝트 관리하면서 향후 모듈분리 및 SPM사용시 빌드 속도 기대, xcodeproj merge conflict 발생하지 않는 장점 등으로 도입 시도함.

주요 업무
  • Tuist로 프로젝트 생성을 위한 기존 Xcode 프로젝트 세팅과 동일하게 작동하도록 분석 및 검증
  • 기존 Xcode 프로젝트 Tuist로 전환하기위한 마이그레이션 설계 및 작업
성과:
프로젝트 분석과정에서 특정 스킴일때 빌드 속도 저하 발견
빌드세팅 마이그레이션에 사용하는 xcconfig 파일의 Tuist 이슈 제보 및 오픈소스 기여
저장공간 통합 관리 기능 2024.08

모든 채팅방의 데이터를 한번에 관리할 수 있는 니즈가 생기고, 주도적으로 발제하여 기능 구현

주요 업무
  • 채팅방 db 구조 파악 및 캐시 구조 파악
  • 의존성 분리하여 샘플앱 개발
  • Swift Concurrency 이용하여 개발
성과:
샘플앱을 통해서 디자이너와 필터링 시간 단축
의존성 주입 및 테스트코드 작성으로 유지보수 향상
저장공간 관리 스크린샷
XCTest 도입 2024.01 ~ 2024.02

오래된 프로젝트로 XCTest target이 없었고, 추후 유지보수를 위해 테스트코드 작성이 필요하다고 판단하여 자발적으로 도입.

주요 업무
  • XCTest target을 추가하기 위한 프로젝트 세팅 전반적인 점검
성과:
XCTest 도입으로 추가되는 서비스 과제에 대해 테스트코드 작성을 통해 신규기능 도입등에 안정성을 제공하고 다른 개발자들도 쉽게 기능 추가할 수 있게 함.
오픈채팅 파일 전송/다운로드 전환 2023.11 ~ 2024.01

신규서버 이관작업에 따라 기존 오픈채팅에서 소켓으로 파일업로드를 REST API로 변경

주요 업무
  • 오픈채팅에서만 다양한 파일 타입(포토, 멀티포토, 동영상, 장문메시지, 오디오, 연락처) 전송,다운로드를 REST API로 구현하도록 설계
  • 30장과 200MB 최대 스팩에 성능이슈 없도록 구현
성과:
기존 Objective-C의 레거시코드들을 Swift로 새로 작성하고, 의존성을 최대한 분리하여 개발하여 유지보수 높임
신고 기능 개발 2023.03 ~ 2024.12

카카오톡은 사용자의 부적절한 메시지, 허위 프로필 등이 존재하고 다양한 방식으로 불쾌감을 주는 방법들이 계속 나타나여 신고 기능을 개선하고 추가하는 작업을 진행

주요 업무
  • 파편화된 신고 UI 통일을 위한 구조 설계
  • 오픈채팅, 팀채팅 방장, 일반채팅, 프로필이미지 등 신고 기능 제공
  • 이미지 신고를 위한 이미지 업로드를 위한 API 구축
  • 다양한 서비스에 걸친 코드베이스 분석
  • 다양한 엣지 케이스 제공 및 스펙 기여
성과:
파편화된 신고 UI로 인한 코드 복잡도가 높았으나 클린 아키텍처를 적용해 의존성을 분리하고, 테스트코드 작성하여 유지보수성을 높임
디자이너와 더 나은 협업을 위해 신고 케이스마다 UI 프리뷰를 제공하여 디자이너와 필터링 시간을 단축함
macOS에서 리소스부족으로 제공하지 못했던 기능들도 Android/iOS/Window와 동일한 수준으로 기능 제공
신고 기능 스크린샷
채팅방 캡처 기능 개발 2023.03 ~ 2023.07

PC에서 쉽게 채팅방의 메시지들을 캡처할 수 있도록 주도적으로 발제하여 기능 구현

주요 업무
  • 다양한 메시지 타입, 채팅방 관련 코드베이스 분석 및 구현 설계
  • 캡처시 사용자의 프로필을 모자이크 또는 카카오프렌즈 적용을 위한 구조 설계
  • 캡처시 발생하는 메모리 이슈 등 성능 안정성 높임
성과:
macOS에서도 채팅방 캡처 기능 구현 완료
iOS/Window에서는 여러장 캡처시 앱이 죽거나 행이 걸리는 이슈들을 macOS에서는 보완하여 안정성 향상
채팅방 캡처 스크린샷
예약메시지 기능 개발 2023.03 ~ 2024.10

예약 메시지 사용자 수가 늘어나면서 사용자의 요청사항이 많아지면서 다양한 개선 및 기능 추가 진행

주요 업무
  • 기존 코드 분석 및 UI 개편
  • 예약메세지 첨부파일 제공을 위한 파일 업로드를 위한 API 구축
성과:
기존 Objective-C 코드 Swift 변환
예약메시지 발송 지표 15% 상승
예약메시지 스크린샷
톡게시판 기능 개발 2022.03 ~ 2024.12

채팅방안에 사용자들이 게시글을 올릴 수 있는 게시판 기능을 더 많이 사용할 수 있도록 기능 추가

주요 업무
  • 타 플랫폼대비 제공하지 않던 작성기능 제공 (글/사진/파일/투표/이모티콘)
  • 파일 업로드를 위한 API 구축
  • 레거시 코드 리팩토링
  • 다양한 엣지 케이스 제공 및 스펙 기여
성과:
기존 Objective-C로 작성되어있던 코드를 Swift로 전환하며 MVC에서 MVVM으로 리팩토링하여 유지보수 추가
AFNetworking -> Alamofire 네트워크 변환 및 의존성 분리하여 리팩토링 진행
macOS 카카오톡 게시판 기능은 리소스부족으로 제공하지 못했던 기능들도 Android/iOS/Window와 동일한 수준으로 기능 제공
톡게시판 스크린샷

개인 프로젝트

AI단어암기장 App Store → GitHub →
2024.12 ~ 진행중

저장한 단어들을 AI가 문장으로 만들어주어 더 효과적으로 암기할 수 있도록 만든 iOS앱입니다.

주요 업무
  • swiftUI로 뷰를 구성하고, 클린아키텍처 기반으로 개발
  • Cloudkit을 이용하여 서버 컨트롤 api 키 관리
  • 유료 결제서비스 도입 및 개인사업자 발급
  • GPT api를 이용하고, 프롬프트 개선
  • OS26 대응
성과:
한번에 모든 기능을 갖추기 보다는 단계적 릴리즈 배포
gpt api를 추후 애플의 AI 등 다른 api로 변경할 수 있게 의존성 분리함
서비스가 커질것도 염두하여 단어db도 추후 서버에서 받을 수 있도록 의존성 분리함
AI단어암기장
머니챌린지 App Store → GitHub →
2024.05 ~ 2024.07

제가 쓰고자 만든 가계부 앱으로 여러개의 가계부를 쓸수있게 했고, 단순히 남은 돈을 보여주는게 아니라, 한달에 지출할 돈을 정하여 30일로 나누어 매일 쓸 금액을 정하고, 안쓸수록 모인돈과 쓸돈을 보여주도록 만들었습니다. 혼자서 사용하던 iOS프로젝트를 flutter로 새로 만든 앱입니다.

주요 업무
  • 안드로이드 및 iOS 둘다 가능한 flutter를 이용하여 개발
성과:
새로운 플랫폼 flutter를 이용하여 앱 개발 출시 완료
클린아키텍처 기반으로 개발하여 이전 프로젝트와 비교했을때 생산성 향상
머니챌린지
띵로그 App Store →
2021.12 ~ 2022.02

자신이 좋아하는 물건들을 기록하는 앱입니다. 깔끔한 디자인으로 자신이 기록한 물건들을 쉽게 보고자 iOS앱으로 만들었습니다. iOS 2명, 디자이너 1명으로 만든 팀프로젝트입니다.

주요 업무
  • UIKit으로 뷰 구현하며, iOS 개발자와 PR 리뷰를 통해 개발
성과:
첫 팀프로젝트로 무사히 앱 출시 완료
띵로그
쉬운 과제 캘린더 App Store →
2020.04 ~ 2021.09

캘린더 형식으로 한눈에 할일들을 보고 싶었고, 할일들을 체크함으로써 정말로 할일을 했는지 확인하고 싶어서 직접 만들게 되었습니다. 첫 저의 앱이자 유지보수를 1년넘게 하면서 사용자들에게 피드백도 받으며 서비스를 개선해나갔고 애정이 많았던 앱이였습니다.

주요 업무
  • UIKit으로 화면 구성 및 다양한 서드파티 사용
  • 사용자의 피드백을 받기위해 앱 내에 의견받을 수 있는 창구 구현
  • 수익을 위한 구글광고 부착
성과:
약 2년동안 8400명 다운로드 및 총 광고수익 350$
대학교 에브리타임에도 꾸준히 광고하고, 사용자의 피드백을 통한 지속적인 업데이트를 통해 출시 5개월 후 부터는 월간 신규설치 454% 상승 (150명 -> 682명)
쉬운 과제 캘린더
마스크 있나요? 2020.03

코로나로 인해 마스크 구매가 어려워졌고, 마스크를 구매할 수 있는 약국을 보여주기 위한 앱입니다.

주요 업무
  • 약국정보를 얻기위해 공공API를 이용
  • Apple 지도를 이용하여 약국 위치들 보여주도록 구현
성과:
밤을 새면서 3일만에 구현했지만, 4번의 리젝을 당하여 앱 출시 실패. 하지만 리젝의 중요성을 얻음.
마스크 있나요?