프로젝트 14

회사생활 회고 22.04 ~ 24.02

서비스 소개 1. 주문/결제 도입 - 포트원을 활용한 PG(나이스페이먼츠, 페이팔) 결제 - 주문 시스템 구축 - 부분환불, 전체환불 - 주문 완료시 포트원 웹훅을 통한 후처리: 상품지급 - 정기구독: 결제수단 등록 및 정기 결제예약 - 구독에 따른 상품 사용량 및 권한 할당 2. ChatGPT + Google Vision AI + AWS Rekognition 을 이용한 URL 분석 - URL 을 입력하면 해당 URL 의 title 과 meta tag를 기반으로 ChatGPT 에 업종/업태를 분석요청 - 입력된 URL 의 웹페이지를 스크린샷 찍은후, AWS Rekognition 으로 스크린샷과 파비콘의 색상 코드 분석 - Google Vision AI 로 스크린샷에 있는 텍스트 분석 - 웹페이지내에 있는..

프로젝트 2024.01.28

올림플래닛 서비스소개 2022.04.25~

엘리펙스 BE 개발 (팀장) 서비스소개: 언리얼 엔진으로 실제공간(건물내부, 특정장소) 또는 가상공간을 만들고 360 이미지를 생성하여 사용자가 웹브라우저를 통해 자신의 가상공간을 소유하고 제작하여 여러사람이 이용할 수 있도록 공유할 수 있음. 1. Unreal - 언리얼에서는 가상공간 제작, 가상공간 360 이미지 생성 - 가상공간 전체를 하나의 Tour 라고 한다. - 투어에는 사용자가 이동할 수 있는 각 지점이 있는데 이를 Scene 이라 한다 - 언리얼엔진에서 각 Scene 마다 360이미지를 만든다. - 가상공간에 사물을 배치한다. 2. 엘리펙스 스튜디오 - 언리얼에서 제작된 가상공간이 엘리펙스스튜디오 - 나의프로젝트 에 노출된다. - 엘리펙스 스튜디오에서는 가상공간의 기본정보 제목, 설명, 태..

프로젝트 2023.12.07

2019.01 ~ 2022.04 회사생활 회고 - 업무편 1부

오늘은 지난 3년간 다녔던 정들었던 회사를 떠나는 날이다. 2019.01.14 일에 입사해서 2022.04.25일 오늘 지난 3년 3개월간의 회사생활을 하면서 내가 어떤 업무를 어떻게 했는지 회고해본다. 1. 에디터 교체, 자료첨부 방식 변경 2019년 1월 입사하자마자 내가 맡은 기업용 SNS 의 에디터를 교체하였고(NicEdit -> CKEditor) 글쓰기 시 자료 첨부 방식을 페이스북처럼 글 하단에 첨부되는 구조에서 블로그 처럼 글 사이사이 첨부할 수 있는 구조로 변경했다. 에디터에 첨부할 수 있는 자료는 snippet(og tag), 언급(mention), 지도, 설문, 파일, 이미지, 드랍박스 파일링크, 구글드라이브 파일링크다. 우리 서비스는 페이스북같은 타임라인 구조였기때문에 글이 길면 ....

이번직장에서 서버개발자로써 남긴 업적

1. 통합검색 기능 개발 회사에서 통합검색 솔루션을 2억안팎의 비용에 구입하려 하여 직접 개발한다고 설득. 좋았던 점: 검색결과 원하는대로 직접 빠르게 튜닝가능. 통합검색(Elasticsearch) 기능 개발 노하우. 통합검색 구매비용 2억 세이브. 나빴던 점: 없음. 결론: 회사와 개인 모두에게 만족스러운 결과. 2. AWS 내 서버 인프라 구성 회사 서비스를 AWS 에 구성. 좋았던 점: SA 인건비 절감 데이터베이스 서비스(RDS)가 무척 안정적. 별도 설정없이 되는 자동백업. 나빴던 점: EC2 인스턴스 해커들의 끝없는 해킹시도. SES 서비스 해커들의 끝없는 해킹시도로 대량의 스팸 발송. (AWS 인스턴스 생성 권한을 잘 관리하지 않은 경우)무분별한 인스턴스 생성으로 인해 과다한 비용이 발생 규..

기업용 SNS 기능 변경 - 에디터 교체편

나는 기업용 SNS (이하 SNS) 의 서버개발을 담당하고 있다. 이 SNS에 글을 작성할 때, 이미지, 파일, 투표, 지도, 클라우드 파일(구글드라이브, 드랍박스), 웹페이지 발췌정보를 첨부 할 수 있는데, 기존 구조는 페이스북 처럼 글 따로, 첨부자료 따로 삽입 되는 구조이다. 페이스북이 이런 구조와 동일하다. 이런 구조에서 Band 처럼 본문내 각종 자료를 첨부할 수 있는 구조를 이용하고 싶다는 Needs 가 있어서 이번에 Band 와 같이 본문내 자료를 첨부하는 구조로 변경을 했던 경험을 공유하고자 한다. 기존에는 글 작성중 자료를 첨부하면 아래와 같이 자료 영역에 자료가 삽입되었지만, 밴드처럼 바뀐 구조에서는 글 중간중간 자료가 삽입돼야 하기 때문에 글 작성중 자료 첨부의 구조가 아래와 같이 바..

프로세스 자동화

사내에서 사용하는 업무요청 시스템이 존재함. 현업, 개발자, 관리자등 전직원이 모든 요청사항(개발, 단순문의, 데이터추출 등)을 이 시스템에 등록함.이 시스템에 등록된 글을 CSR (Custom Service Request) 라고 함.이 CSR 중 개발 관련 요청사항은 개발자가 이 업무 시스템에 작성하고 품질관리팀 레드마인에도 '개발중' 상태로 작성함.개발자는 CSR 에 작성한 개발건이 완료되면 레드마인의 일감 상태를 '개발중' 에서 '점검접수(테스트요청)' 으로 변경함.레드마인에 작성된 일감 중 점검접수 상태의 일감을 보고 테스터는 해당 글을 등록한 개발자와 연락하여 테스트를 적절하게 시작함. 개발자가 업무요청 시스템에도 요청사항을 등록하고 레드마인에도 등록하며 상태를 두군데 모두 업데이트 해줘야하는 ..

테스트 자동화 프로젝트 수행 회고

1. 테스트 자동화 - 테스트 상황 자동 생성 API 개발수동 테스터가 테스트를 진행 할 때, 테스트를 수행하는 시간보다 테스트 할 수 있는 상황을 만드는 것이 더 오래 걸린다고 함.예를 들어, 신용카드 프로모션이라는 기능이 있는데 특정 상품을 특정 신용카드로 구매했을 때 3~7% 정도 청구 할인해주는 기능인데, 상품 별, 카드별로 다른 할인율을 적용해서 테스트를 할 때 테스트 하는 시간보다 테스트할 수 있는 상황을 만들기 위해 상품에 프로모션 추가 하는 시간이 엄청나게 오래 걸린다고 함. 또 상품에 프로모션을 추가하기위해서는 내부에서 쓰는 백오피스에 권한도 있어야하고, 사용법도 알아야하기 때문에 새로운 사람이 왔을 때 백오피서 서비스 권한신청 및 교육이 반드시 필요한 상황.이런 어렵고 복잡한 과정을 생..

테스트 데이터 자동화

테스터가 특정 기능 테스트를 할 때, 테스트 하는데 걸리는 시간보다 테스트 사전조건을 만드는데 걸리는 시간이 더 많은 경우가 있다. 직접 조사를 해보니 꽤 많은 경우에 실제로 테스트 하는데 걸리는 시간보다 테스트 사전조건을 만드는데 시간이 더 많이 걸린다고 한다. 간략하게 두가지 정도만 예를 들어보자면 아래와 같다. 1. 쇼핑몰 상품에 신용카드 청구할인/즉시할인 프로모션이 있는 경우에 대한 테스트2. 상품 구매 후, 배송상태에 따라 고객이 할 수 있는 행동에 대한 테스트 1번 신용카드 청구할인/즉시할인 프로모션 테스트를 하기 위해서는 상품에 프로모션을 등록해야한다.프로모션을 등록하기 위해서는 쇼핑몰 내부 시스템을 이용해야하며 등록해야할 사항과 조건이 매우 까다롭다.또한, 프로모션의 종류가 매우 다양하고,..

1. 베트남 하노이팀과의 테스트자동화 프로젝트 협업 경험 - 협업도구 편

베트남 하노이팀과 테스트자동화 프로젝트 협업 경험을 공유하고자 합니다. 프로젝트의 목표는 이렇습니다. G*홈쇼핑은 매주 정기적으로 배포를 합니다. 매주 정기적으로 배포를 할 때마다 테스터는 웹 과 앱 전체 기능을 모두 테스트 합니다. 테스트해야 할 기능이 매우 많기 때문에 매 정기 배포 때마다 모든 기능을 잊지 않고 테스트하기 위해, TestLink 라는 테스트관리도구를 이용하여 수행해야 할 테스트를 모두 기록해 놓습니다. 대략 아래와 같은 계층 구조를 갖도록 작성합니다.테스트 프로젝트 -> 테스트 플랜 -> 테스트 스위트 -> 테스트 케이스 -> 테스트 스탭 이렇게 테스트를 하다보니, 매 주마다 수많은 테스터가 수많은 기능을 반복적으로 많은 시간을 들여 해야 합니다. 매주 똑같은 테스트를 수행하다보니,..

Data Access 기술 선정

정상혁님이 쓰신 글 Java에서 XML없이 SQL개발하기 을 보고 Mybatis 를 버려야겠다는 생각을 했다. 정상혁님의 글 내용중에도 있지만, 현재 Mybatis 를 썼을 때 발생하는 장점이 많이 퇴색했다. Mybatis 는 조인된 결과를 담는 ResultMap 과 내부에서 쓰는 Association 같은 것을이 너무 불편했고, 쿼리에선 값이 정상적으로 조회되는데 Mybatis 결과가 객체에 정상적으로 셋팅되지 않을때, 이유를 알기 어렵고, 쿼리 결과를 개발자가 직접 핸들링 하기가 힘들다. 또한 Mybatis 에서 제공되는 기법들은 Spring JDBC에서도 모두 제공되고 있다. 그런데, 국내에서는 Mybatis 가 거의 관례처럼 돼버렸다. 요즘은 그래도 김영한 ORM 전도사님께서 국내최초로 ORM 책..