번개애비의 라이프스톼일
로컬에서 git을 사용하고 있는데 굉장히 귀찮은 일이 많아서 개발서버에서 파일저장 시 github으로 자동 커밋하는 기능을 만들었고, 이 기능을 공유한다. 컴포넌트화된 라이브러리들을 중간중간 Public git으로 커밋해주고, CDN을 통해 메인프레임웤에 연동하는 개발위주로 진행하고 있다. AS-IS 단위기능수정 -> 컴포넌트 수정사항발생 -> 로컬에서 개발 및 테스트 -> git커밋 -> CDN으로 실서버에 배포 컴포넌트 수정사항은 사실 잦은 일은 아니였지만, 매번 로컬에서 개발하고 테스트하고 git에 배포하고 CDN으로 실서버에 배포하는 과정자체가 굉장히 수고스러웠다. 무엇보다 로컬환경에서 개발과 테스트했을때와 실서버에서 배포되었을때와의 환경차이(?)로 인해 어려움이 많았고, 이러한 환경차이를 최소화..
PHP8 이 새롭게 나오면서 JIT이라는 개념으로 기존 PHP 7 대비 성능이 크게 향상되었다고 주장했었으나, 사실, 큰 성능 향상을 기대하기 힘들었다. (슬그머니 올려두었던 나머지 발 마저도 떼야되나...) 프레임워크에 동일한 성능의 클라우드에 PHP 8.1 과 PHP 8 을 올려두고 여러번 테스트했지만, 사실 상 유의미한 성능변화폭이 없는것도 사실이다. (기대말라... 💩) 그리고, JIT을 Opcache와 활성화해두면 컴파일 캐싱을 위해 가끔 엄청나게 속도가 느려지는 현상이 발생되는 문제점도 존재함. (참고로 서버셋팅이 잘못될리 없음 ㅋㅋ) (PHP JIT이 드디어 나왔다고 환호했던 예전의 나를 반성하게 만들어버림....) 작년에 PHP 8.1 이 새롭게 나오면서 새로운 기능을 이것 저것 맛보고 있..
이번에 회사에서 신입개발자(1년미만)를 채용하게 되었다. 내가 경험한 것처럼 다른 회사의 파트장이나 팀을 이끄는 리더에게 조금이나마 도움이 됬으면 하는 바램에 경험내용과 코딩테스트 문제를 공유하게 되었다. 이전까지는 면접과 배경지식과 관련된 간단한 문제만으로 개발자를 뽑았었는데, 그 결과 조금만 로직이 복잡해지면 굉장히 힘들게 일을 하는 경우가 많았고 그 빈도가 점차 증가하면서 주니어개발자 그 자신에 대한 자존감이 크게 하락하는 경우를 경험하게 되었다. 그 친구만의 문제라고 단정짓지 않고 Recruit 프로세스부터 OJT, Todo 관리, Capa 측정등 회사 내 개발조직의 모든 프로세스를 점검하면서 되돌아본 계기가 되었다. 최근 개발자 몸 값이 크게 뛰면서 많은 사람들이 직업학교등을 통해 개발에 입문하..
SPA란? Single Page Application의 약자로써 쉽게 이야기하자면 페이지이동이 이뤄지지 않는 웹서비스를 말한다. 단순히 1페이지로 구성되는 서비스가 아니라 실제 메뉴/페이지 이동도 가능하도록 구현시킬 수 있다. SPA 서비스들은 최초 브라우저에서 페이지 로드이후 새로고침이 이뤄지지 않기 때문에 사용자로 하여금 페이지 전환이 빠른것처럼(?) 느끼게 해줄 수 있다. 위 사진에서는 Ajax로 구현되어 있지만 최근에는 React로 손쉽게 구현할 수 있으며, 조금더 낮은 단계로 내려가면 Fetch, axios로 구현할 수도 있다. (심지어 Websocket으로 구현한 경우도 있음) 최근에는 Android, iOS등 멀티플랫폼에 대응하기 어려운 환경에서 SPA기반으로 웹뷰로 서비스하는 목적으로도 ..
요즘 차량관제와 관련된 백오피스를 개발하면서 지도와 열심히 씨름중임. 매일 수십개의 스팟과 함께 지도에는 언제나 수백개의 차량을 표현하는 마커가 떠 있어야 하는 미션이 주어짐. 이렇게 대용량 마커를 Static map 에 출력하는 방법은 위 이미지처럼 무식하게(?) marker를 때려박거나 클러스터러를 활용하는 방법이 있다. 개발하는 관점에서는 당연히 클러스터러가 편하고 쉽고 섹시한 방법처럼 생각할지 모르겠지만, 지도에서 어떤 객체를 바로 검색하거나 찾아야되는 요구사항에서는 마커를 때려박는 경우도 있다. 네이버맵이든, 티맵, 카카오맵등 대부분의 맵의 JS작동방식이 비슷해서인지 몰라도 동일하게 300개이상의 대량 마커가 지도에 한꺼번에 출력되면 엄청난 렉이 동반된다. 웃긴건 업체들마다 API로 제공하는 N..