정보
[김기태]
- 이메일: daearcdo@kimkitae.com
- LinkedIn: https://www.linkedin.com/in/kitae-kim-88597817a
- 블로그/포트폴리오: https://kimkitae.github.io/
- 문의사항: 문의하러가기
🧑💼 경력 요약
- 8 년간의 모바일 및 다양한 자동화 테스트 기획, 개발 및 운영 경험
- Python, Groovy, SoapUI, Postman, Katalon, Appium, Espresso, XCUITest, Workato, UIPath, Katalon 등 다양한 언어, 자동화 툴 사용 경험
- FastAPI, Redis, Kafka, MariaDB 등 여러 프레임워크 사용 능력
- 자체 자동화 테스트 플랫폼 시스템 설계 및 아키텍처 경험
💼 경력
[위대한상상], [팀원]
기간: [2019.01.14] - [2024.09.30]
- 프로젝트명: LLM 이용한 자동화 스크립트 자동생성
- 역할: [LLM를 업무에 적용하기 위한 기획, 구현]
- 사용 기술: python, slackbot-bolt, openai, rag
- 성과: [주 커뮤니케이션이 자주 발생하는 부분에 대한 LLM 적용, 스크립트 작성에 대한 함수 질문, 간단한 스크립트 완성, 테스트 케이스 지표에 대한 질의응답을 Rag 방식을 통해 LLM로 답변을 생성하여 커뮤니케이션 비용 단축, QE API의 Web UI 외에도 Slackbot을 통해 단순 봇 호출과 질문으로 동작할수있도록 인터페이스 제공하여 사용성 향상, 간단한 스크립트 작성에 한해 질문에 대한 스크립트 작성율은 90% 도달, 개인적으로 사이드 프로젝트로 진행하던 프로젝트로 완벽히 끝내진 못하고 가능성을 확인해볼 수 있는 성과]
- 프로젝트명: [Windows 프로그램 내 WebView 크로미움 자동화]
- 역할: [개발팀 내 요구사항 정리, 기술검토 및 구현]
- 사용 기술: python, pytest, javascript, Appium Windows Desktop
- 성과: [Debugging port를 통한 WebSocket통신으로 자동화 구현, 요구하는 시나리오에 대한 자동화 구현 (요구사항 대비 94% 완료), FE팀과의 React 빌드 시 마다 ID가 동적으로 변경되는 부분에 대한 대안과 필요성에 대한 리뷰로 문제를 해결할 수 있는 방안 마련]
- 프로젝트명: SMS 인증 관리 통합 페이지 기획 및 개발
- 역할: [SMS Receive할 Android Application 개발, 인증문자 확인을 위한 Web, Backend 구현]
- 사용 기술: Kotlin, fastapi, Redis, JavaScript
- 성과: [누구나 보유 중인 테스트 유심폰에 APK를 설치하여 해당 번호로 인증번호가 필요한 경우 통합 관리 페이지를 통해 수신된 인증문자 확인이 가능, API를 통해 해당 번호의 인증번호 호출가능하도록 하여 자동화 스크립트 내에서도 본인인증 가능하도록 하여 테스트 커버리지를 향상]
- 프로젝트명: LogViewer 기획 및 개발
- 역할: [api를 통해 log를 전달하고 한곳에서 logviewer를 할 수 있도록 자동화 플랫폼 기획 및 구현]
- 사용 기술: fastapi, Redis, kafka, JavaScript
- 성과: [QE 구성원들이 구현한 간단한 자동화 시스템에도 간단히 API 호출만으로 Log 메시지를 전달하여, 메인 QE API서버에서 각 서비스멸 로그내역을 확인 할 수 있도록하여, 기존 에러 처리 및 로그 내역 확인을 위한 커뮤니케이션 비용을 대폭 경감]
- 프로젝트명: [Workato 업무 자동화 구현]
- 역할: [각 부서 별 업무자동화 인터뷰를 통한 자동화 선정, 요구사항에 맞게 자동화 구현]
- 사용 기술: AWS, fastapi, slack-bolt, python, big query
- 성과: [1. 마케팅 부서의 여러 광고 매체에서의 데이터를 Google Sheet로 수집하여, 필요한 데이터 가공 후 Big Query로 저장하여 연간 리소스 비용 대폭 감축, 2. IT팀 업무 중 사용자 계정 생성 / 삭제 에 대해 Slackbot을 통해 계정 생성/삭제 요청을 받아 담당자가 승인 또는 반려 에 따라 이력 저장 및 동작하도록 하여 해당 업무 간소화, Workato 주최 TechTalk 패널 참석]
- 프로젝트명: [자동화 리그레션 프로세스 자동화]
- 역할: [Jira Flow 정립, QE API서버 구현, TestRail API 구현, JIRA API 구현, TestReport API 구현, Jenkins Pipeline 구현]
- 사용 기술: fastapi, python, jira, Google sheet api, Celery, Redis, Jenkins
- 성과: [기존 매 릴리즈 때마다 직접 해당 버전의 릴리즈 티켓을 OS별 생성, Test MileStone 생성, 테스트 결과를 매 릴리즈 일정(Google Sheet api)에 따라 OS별 Jira의 Release 생성 / 이전 버전 Released 처리, 완료되지 않은 하위 티켓은 신규 Release로 자동 이관, Test MileStone 자동생성 / 이전 버전 종료 하여 테스트 계획 전 구간을 자동화 처리, 유지보수에 따른 티켓 생성에 대한 Flow를 별도로 처리, 특정 타입 티켓으로 Prefix로 ios, and 입력 시 매 Interval로 API에 의해 해당 OS 릴리즈 하위티켓으로 자동연결, 테스트 종료 후 TestReport 전송 또한 자동화 처리, 주기적으로 릴리즈 브렌치의 커밋내역 비교하여, 자동 빌드 후 자동 테스트 수행적용하여, 최소한으로 유지보수에 대한 작업만 개입하게 하여 리그레션 과정을 자동화 하였습니다.]
- 프로젝트명: Mobile Platform팀과 테스트 개선 작업
- 역할: [iOS 자동화에 대한 테스트 개선 작업을 위한 다양한 방법 제시 및 적용하여 결과 보고]
- 사용 기술: fastapi, Python
- 성과: [새로운 Object Locator전략 제시, API를 통해 실제 서버에서 받는 데이터를 통해 UI 오브젝트에 접근하도록 하여 항상 Identifier 의존성으로 단순 누락/변경에 의한 실패율을 감소, 통합 API를 구현하여, 주문완료 등의 다양한 테스트 절차를 간단한 API호출로 완료하도록 하여 해당 스텝의 테스트시간을 30초 이상 단축하여 전체 테스트 리그레션 시간 대폭 단축, 상태 flag를 적용하여, 각 상태 flag 값에 따라 매 BeforeClass, BeforeTestCase, AferTestCase, AfterClass 동작을 동적으로 하도록 하여 테스트 초기화 시간 단측 및 최적화]
- 프로젝트명: 자동화 커버리지 향상을 위한 신규 자동화 툴 도입 및 기존 Katalon 코드 컨버팅
- 역할: [다양한 자동화 툴 벤치마킹 및 파일럿 테스트 진행, 자동화 도입을 위한 제안서 작성, 셋업]
- 성과: [Codeless 툴인 Katalon 도입하여 QE 구성원들도 직접 자동화 시나리오 작성할 수 있도록 하여 단기간 내 테스트 커버리지 대폭 향상(Android 기준 전체 커버리지율 50% -> 80%), 기존 Built-in 으로 구현한 모든 자동화 코드를 Katalon 으로 단기간 컨버팅 완료하여 신속하게 적용 및 정상화(Working day 24일)]
- 프로젝트명: [각 QE 트라이브 팀 별 자동화 스터디]
- 역할: [각 트라이브 별 QE팀들의 자동화 목표 설정, 기획, 구현을 위한 스터디 진행]
- 사용 기술: Python, Postman(JavaScript), Jenkins
- 성과: [각 트라이브 별 담당하는 프로젝트에 대한 리그레션을 자동화로 검증 할수 있도록 기획 및 구현가능하도록 교육 제공하여 모든 트라이브의 QE들 완성률 100% 완료, Jenkins를 이용한 자동 검증을 통해 전반적인 배포 후 검증단계 까지 절차 간소화, 사내 구성원들 자동화역량 강화]
- 프로젝트명: 알림음 자동화 구현
- 역할: [서비스 내 알림음에 대한 자동화 요구사항에 따른 기술 검토 및 구현]
- 사용 기술: Docker, python, Appium(Python)
- 성과: [Docker를 이용한 음악인식 서비스를 적용하여, 단말의 소리를 녹음하여, 이를 mp3로 추출, 음악인식하고 매칭하여 실제 알림음 송출여부 확인 할 수 있도록 자동화 완료하여 다양한 서비스 내 알림음 자동화 적용]
- 프로젝트명: [SlackBot을 유틸리티화 구현]
- 역할: [Slack-bolt를 통해 각 이벤트별 테스트 데이터 생성 및 조회 등 업무에 자주 쓰이는 기능 제공 및 운영]
- 사용 기술: Slack-bolt(Python), Vault
- 성과: [계정 조회, 인증 초기화, 포인트 충전 등 R&D 모든 구성원들이 테스트 데이터 생성을 SlackBot을 통해 간편하게 할 수 있도록 하여 업무 간소화, 이를 플랫폼화 하여 각기 다른 구성원들이 기능추가 할 수 있도록 하여 전체적인 Slackbot 사용성을 최대로 향상]
- 프로젝트명: [Locust 이용한 서비스 성능 테스트]
- 역할: [Python으로 테스트에 필요한 모든 요기요 API 구현, 실제 상용서버의 트래픽 비율에 맞춰 테스트 셋 설정, Locust를 이용한 부하 테스트 수행 및 분석결과]
- 사용 기술: Locust, Python
- 성과: [Locust, Ngrider, k6, jmeter 등 다양한 부하 시스템 중 Locust를 이용하여 성능 테스트를 위한 최초 프로세스를 수행, 이를 기반으로 향후 성능 테스트가 활발하게 수행]
- 프로젝트명: GTM 자동화
- 역할: [GTM 관련 요구사항 정리 및 기획, 자동화 구현]
- 사용 기술: Python, Charlse, Appium(Java)
- 성과: [매 릴리즈 배포 후 GTM 누락으로 인해 2가지 형태의 GTM 검증을 위한 자동화 구현 1. 단말의 Log를 수집하여, 해당 시나리오에서 발생해야 하는 Log를 비교, 2. 단말을 프록시 서버와 연결, 패킷을 캡처하여 누락된 Log가 없는지 비교, 이후 기본 시나리오에 안해 휴먼에러 예방]
- 프로젝트명: 일 배포 모니터링/리그레션 구현 및 운영
- 역할: [Backend의 일 다회 배포될 때 자동 모니터링/리그레션 구현]
- 사용 기술: Python, Appium(Java), Slack API
- 성과: [매 배포 시 Slackbot을 통해 모니터링/리그레션 자동 수행 제공, 테스트 수행 결과 알림으로 매 배포 시 30분을 메뉴얼로 확인하던 프로세스를 자동화하여, QE 온콜자 및 배포 개발자들의 리소스 경감, 프로세스화 하여 각 MSA 별 자동화 테스트 적용]
- 프로젝트명: Espresso, XCUITest를 이용한 Regression 자동화 개발
- 역할: [Built-in Test Framework를 이용하여 자동화 개발]
- 사용 기술: Kotlin, Swift
- 성과: [BlackBox 툴의 단점인 Test Object 변경에 따른 추적 불가를 해결하여 최초 테스트 1회 수행 후 Test Object 변경사항 확인 한 뒤 유지보수 후 정식 테스트를 수행하는 시간을 대폭 단축, Built-in 에선 빌드 시 즉시 Test Obeject 변경 여부 확인이 가능, 리소스 사용량 감소와 idlingResouce 적용으로 전반적인 테스팅 속도 향상, 자동화 프로세스를 개발 프로세스에 통합하여, UI 자동화 개발 및 운영 프로세스 정립, 2주 1회 릴리즈 배포를 1주 1회로 배포 주기 단축하는데 큰 기여]
- 참고링크: iOS UI Test
- 프로젝트명: Appium Android, iOS 자동화 개발
- 역할: [Jenkins와 Appium을 이용하여 Android, iOS Regression을 자동화 구현, TA팀 필요성에 대한 개발팀 내 PPT 진행]
- 사용 기술: Jenkins, Appium(Java), Junit
- 성과: [요기요 앱에 대한 최초 Regression 자동화 구현 및 자동화 팀 신설]
[이노아이], [주임]
- 주요 업무: [QA, Automation Testing]
기간: [2014.08.01] - [2017.11.01]
- 프로젝트명: [11번가 자동화 개발 및 검증]
- 기간: [2017/07] - [2017/11]
- 역할: [다른 프토로타입 자동화 툴 키보드 구현 담당, 자동화 툴 시스템 테스트 진행, 사용자 시나리오 기반 자동화 진행]
- 사용 기술: Appium, Junit
- 성과: [접근성 높은 자동화 툴 구현 및 자동화 테스트 커버리지 확대]
- 프로젝트명: [OKCashBag 자동화 검증]
- 기간: [2016/06] - [2017/07]
- 역할: [자동화 프로젝트 생성, 기능/UI TestCase 분류 및 작성, 이슈 관리 및 리포팅, 형상 관리 및 일정 관리, 테스트 유틸 앱 구현]
- 사용 기술: Appium, Junit
- 성과: [메뉴얼 검증 효율화, Android 자동화 적용, 동시 4대 병렬 테스트로 리그레션 테스팅 시간 단축]
- 프로젝트명: [OKCashBag 기능 검증]
- 기간: [2016/01] - [2016/05]
- 역할: [명세서에 따른 TestCase 작성, 기능 검증, 이슈 등록 및 관리]
- 사용 기술: BTS, Jira
- 프로젝트명: [소모 전류 측정 및 비기능 테스팅]
- 기간: [2015/07] - [2015/12]
- 역할: [단말 별, 서비스 별 소모전류 측정, 결과 생성을 위한 매크로 구현 및 유지보수, Log 분석, Util 구현]
- 사용 기술: ADB, Visual Basic, Bash
- 성과: [각 단말 별 특정 조건 소모전류 기준값 정립, SK플래닛 서비스 별 기준 소모전류 값 정립, Logcat, Batterystats Log분석 및 Bash 스크립트로 Log 추출 및 전체 작업 시간 감소]
- 프로젝트명: [Script 개선]
- 기간: [2015/05] - [2015/06]
- 역할: [API Assertion Script 개선]
- 사용 기술: groovy
- 성과: [각 Request의 Assertion Script 용량 2M를 20kb 로 용량 축소]
- 프로젝트명: [SoapUI FrameWork 작성]
- 기간: [2015/05] - [2015/06]
- 역할: [Soapui 내 Custom Plugin 구현]
- 사용 기술: groovy
- 성과: [Goovy를 이용한 Jar 파일 구현 및 배포로 모든 작업자들이 마우스 menu만으로 Custom menu의 Assertion Script로 원클릭으로 스크립트 사용할 수 있도록 하여 툴 사용성 향상]
- 프로젝트명: [SmartHome API 자동화]
- 기간: [2015/04] - [2015/05]
- 역할: [SmartHome API 자동화 개발]
- 사용 기술: groovy
- 성과: [단순 시나리오 성 API 조회가 아닌 테스트 데이터 초기화, 조건에 따른 동적 API 동작으로 휴먼에러로 인한 테스트 실패율 감소, 서비스 도메인 특성 상 플랫폼 내 신규 장비 추가사항에 대한 의존성 제거를 위한 모듈 개발로 자동화 향상]
- 프로젝트명: [SyrupPay API 자동화]
- 기간: [2015/02] - [2015/03]
- 역할: [SyrupPay API 자동화 구현]
- 사용 기술: groovy
- 성과: [타 서버로부터 데이터 연동제한으로 데이터 암호화 관련 Jar파일을 테스트 코드 내 적용하여, 데이터 생성 및 결제 테스트 가능한 환경구축 및 검증 진행]
- 프로젝트명: [T-MAP 자동화]
- 기간: [2014/11] - [2015/01]
- 역할: [규격서 기반 API, UI Script 자동화 구현]
- 사용 기술: groovy, Appium
- 성과: [단일 테스트가 아닌 시나리오 형태로 모듈화 구현, CSV를 이용한 검색처리, Response 내 Null 체크, Fail Log 추출 등 작업 자동화]
- 프로젝트명: [I-Store API 자동화]
- 기간: [2014/10] - [2014/11]
- 역할: [SoapUI API 구현 및 Mock서버 이용한 예외 테스트 구현]
- 사용 기술: groovy, Fiddler
- 성과: [BrakePoint를 이용한 Response 변조로 클라이언트의 예외동작 검증을 위한 Mock 테스트 구현, API 자동화 검증]
- 프로젝트명: [T-Belling 테스트]
- 기간: [2014/09] - [2014/10]
- 역할: [컬러링 / 상황별링 서비스 내 상품 구매, 설정 관련 명세서 기반 기능 테스트 수행]
- 프로젝트명: [T-Shopping 테스트]
- 기간: [2014/08] - [2014/09]
- 역할: [Android, iOS의 WebView에 대한 기능 테스트 수행, 비기능(페이지 로딩) 테스트 수행]
- 프로젝트명: [T-Shopping 테스트]
- 기간: [2014/08] - [2014/09]
- 역할: [Android, iOS의 WebView에 대한 기능 테스트 수행, 비기능(페이지 로딩) 테스트 수행]
- 프로젝트명: [T-Sport 테스트]
- 기간: [2014/08] - [2014/08]
- 역할: [Android 기능 테스트]
- 성과: [다양한 환경(화면 OFF, BackGround, ForeGround) Activity에 대한 동작 확인]
[한국정보통신자격협회], [사원]
- 주요 업무 [Android 신 자격 개발, 대외협력, 자격 관리 및 운영]
기간: [2013.12.01] - [2014.07.20]
- 프로젝트명: [Android Certification Develop]
- 역할: [급수 별 난이도 조절 후 해당 급수 별 문제와 해답을 교육참고용으로 예제샘플제작 및 배포, 반복적인 모의 테스트를 통해 더욱 점진적 완성도 향상]
- 사용 기술: Java
- 성과: [Android 관련 자격증 1/2/3 급수별 정립]
🛠 기술 스택
- 언어: Python, Groovy, JavaScript, SQL, Kotlin, Swift
- 프레임워크/라이브러리: FastAPI, Django, Flask, Slack-bolt, Espresso, XCUITest, Appium
- 데이터베이스: MariaDB, PostgreSQL, Redis
- 툴 및 플랫폼: Docker, AWS, Kafka, Katalon, Workato, RPA
📚 학력
- [경민대학교], [학사] 전공: [정보통신학과] 기간: [2007] - [2014]
🏆 자격증
- [정보처리기사], [한국산업인력공단], [2015]
- [ISTQB - F/L], [KSTQB], [2015]
- [정보기기운용기능사], [한국산업인력공단], [2005]
- [정보처리기능사], [한국산업인력공단], [2004]
- [워드프로세스 1급], [대한상공회의소], [2004]
📞 연락처
- [위 이메일 답장이 없을 시 daearcdo@gmail.com 로도 연락부탁드립니다.]
🔗 기타
- [단순히 자동화 구현관련 업무뿐만 아니라 테스팅 기법/전략, Technical Test Analyst 등 관심이 많습니다.]
(위 이력서는 마크다운 형식으로 GitHub에 업로드되었으며, 최신 정보를 반영하도록 정기적으로 업데이트할 예정입니다.)