처음 개발을 시작하게 되었을때, Flutter + FireBase로 구성된 가벼운 앱이었습니다. 해당 앱에서의 기능은 대부분 DB에서 가져와서 보여주는 형식을 가지고 있었고, FireBase는 db에서 데이터를 가져온 횟수만큼 비용이 추가되는 구조를 가지고 있었기에 Backend의 필요성과 Cache의 필요성을 가지게 되었습니다. 또한, 데이터의 필터링과 로직 고도화를 위해서 Backend를 추가해야된다고 생각했습니다. 하지만, 우선적으로 해야하는 것은 팀을 설득하는 것이었습니다.Firebase만을 이용한다면 유저 관리 및 알람 등 다채로운 기능을 쉽게 구현하게 해주는 장점이 있습니다. 그리고 시스템 구축의 속도 또한 빠르게 진행할 수 있습니다. 하지만 복잡한 비즈니스 로직을 목표로 하기에는 적합하지 ..
프로젝트
3번째 프로젝트는 Semes 기업 멘토님의 조언과 함께 만들게 되었습니다. 반도체 설비를 모니터링 하는 시스템을 만들어보기로 했습니다. github : https://github.com/Projcet-E201 notion : https://www.notion.so/PJT-770f43012e344dfa9aad09a5a6d324f6 목표 추구하는 목표는 1. 누구나 쉽게 볼수 있도록 직관적으로 만들자 2. 사용자가 보기 편한 방법으로 구성할 수 있도록 커스텀 영역을 두자 였습니다. 화면 모습 위 모습은 메인화면이며 사용자가 클릭을 하면 원하는 방식으로 데이터를 보여줍니다. 또한 커스텀을 해서 사용자가 원하는 범위를 지정하면 그 범위에 대한 알람을 줄수 있습니다. 이 화면은 분당 200만개의 데이터를 전송한 ..
두번째 프로젝트는 소기의 상을 받았던 프로젝트였습니다. 이건 우수상을 받을수 있었습니다. 저희 조가 추구하고자 하던 바는 "뉴스를 읽는 사람이 이해할수 있게 뉴스들을 추천할 수 있게 만들자" 였습니다. 뉴스를 보면 모르는 단어나 왜? 라는 물음이 생기는 경우가 생깁니다. 이 때, 모르는 단어가 요즘 뜨는 키워드인 경우, 날짜 순으로 가장 이슈가 된 날이 언제인지 그래프로 보여주고 해당 날짜의 뉴스를 통해 이해시켜주는 것입니다. 어떻게 구현했는지 궁금하시죠? ㅎㅎ 이를 구현하기 위해서 3가지가 필수적으로 구현되어야 했습니다. 1. 뉴스들의 군집을 모아주는 알고리즘 2. 뉴스들을 빠르게 처리해주는 클러스터링 3. 빠르게 기사나 필터링을 해주는 인덱싱 이렇게 중요한 3가지를 제외하고, 추가적으로 구현한 기능은..
기획을 마치고 드디어 프로젝트를 시작할 수 있었어요. 팀 구성은 vue를 맡은 2명과 spring을 맡은 3명과 함께 했습니다. 제가 webRTC와 CI/CD를 맡게 되었습니다. 처음 webRTC를 구성할 때 어떤 방식으로 사용할 지, 사용하게 되면 백은 어떻게 구상할지에 대해 구상하는데 시간을 많이 사용했습니다. 오픈비두를 사용하게 되면 상대적으로 webRTC만 사용해서 가공하는데 비해 어떤점이 부족한게 있나 확인하고 싶었기 때문이죠... 3일동안 알아본 결과는 오히려 openvidu를 사용하는게 접근하기 쉽고 kurento, turn 서버를 구성해준다는 장점이 있었습니다. 3주차에서 6주차 투자 시간 2주간 CI/CD에 투자 4일 webRTC서버 구축 및 서버 연결 7일 vue 1일 ucc 촬영 1일..