sdh20282's portfolio

Talkids

초등학생/중학생을 위한 언어 교류 플랫폼

Duration

2023.07.17~2023.08.18

Participants

Frontend 2명, Backend 3명

Major Skills

ReactSpringBootExpressMySQLSocket.io
 
학급에서언어교류를위한플랫폼이굉장히제한적인것을보았습니다.
WebRTC기술과WebSocket을활용해이를해결해보고자해당프로젝트를진행하게되었습니다.
메인 페이지
메인 페이지
채팅 페이지
채팅 페이지
팔로우 페이지
팔로우 페이지
laptop image
hilight
 
Frontend
헤더 레이아웃, 모달 공통 컴포넌트 개발
web socket을 활용하여 1대1 채팅/화상 페이지 및 그룹 채팅/화상 페이지 개발
web speech api를 통해 음성 인식 관련 처리 구현
Backend
web socket을 활용하여 채팅 및 webRTC 서버 구현
Express로 STT, 번역을 처리하는 서버 구현
Database
채팅, 사용자 테이블 구조 설계
   

새로운 기술을 적용할 때 해당 기술이 꼭 필요한지, 어떻게 필요한지 고민하게 되었습니다.

프로젝트 기획 상 webRTC 기술을 적용할 필요가 있었고 초기에 open vidu 오픈소스를 활용하자는 의견이 있었습니다.
사용자 간의 연결이 1:1 혹은 1:N(소수)에서 주로 발생할 것이라 판단했고, 논의 끝에 보다 쾌적한 경험을 제공하기 위해 서버를 직접 구현하기로 했습니다.
mesh 서버를 구현했고 0.3초의 지연 시간이 발생한 SFU 방식의 open vidu에 비해 지연 시간을 0.1초 내외로 단축할 수 있었습니다.

토론을 통한 성장을 경험했습니다.

효율적인 구조를 설계하기 위해 팀원들과 토론하며 고민하는 과정과 조금씩 개선되는 코드를 보며며 성장을 경험했고, 즐거움을 느꼈습니다.

소통에 대한 이해를 높일 수 있었습니다.

Jira를 통해 각자 어떤 일을 해야하고, 어떤 일을 하고 있는지를 공유하며 현재 진행 상황을 수월하게 공유할 수 있었습니다.
매일 10분 정도의 데일리 스크럼을 통해 팀원들 간의 진행 상황을 공유하고, 문제가 있거나 도움이 필요한 부분들에 대해 이야기 할 수 있었습니다.