////
Search

장예찬 멘토님

해커톤 프로덕트 보기 결과물 제출 링크: BES 2기 해커톤 발표 자료 및 시연 영상 제출(응답)4.92 KB 결과물 제출 시간: ~2월 16일 13시까지 금일 진행되는 해커톤 발표 및 상단의 제출물 링크를 참고하셔서 평가시트를 2월 17일 13시전까지 전달을 부탁드립니다.
평가항목
Search
심사 항목
세부 평가 사항
비고
1. 아이디어의 독창성 및 우수성 (이용자에게 제공하는 편의성 및 영향) 2. 학습 내용 기반(백엔드 스쿨 1기 교육기간 동안 진행한 내용 위주)의 기술 활용도 여부
백엔드 스쿨에서 학습한 내용 외에 개별적으로 학습하여 적절하게 사용한 기술이 있는 경우 가산점 부여
1. 개발 목표 달성의 충실도 2. 개발 추진 체계의 적절성 3. 아이디어의 구현 완성도 4. 아이디어의 지속 가능성 및 확장성 5. 문제 해결을 위한 논리 구조의 명확성 6. 코드 가독성 및 및 구조화 수준, 코드 오류 여부 (코드 품질에 대한 모든 부분을 포함) 7. R&R에 따른 교육생 별 기여사항
2-2. 추가설명 목표가 적절한지와 목표를 얼마나 달성했는지에 따라 점수 배분 2-6. 세부적인 코드 확인보다 Git Readme.md에 적힌 내용으로 확인
1. 발표 내용의 충실성 및 전달성 2. 시연 영상의 완성도
안녕하세요 심사위원 여러분 :) 금일 해커톤 평가를 위해 모여주셔서 감사하다는 말씀 전합니다. 본 해커톤 발표물들은 총 5주의 기간 동안 5-6명의 수강생이 함께 구현한 작품입니다. 가지각색의 멋진 아이디어들이 모인 해커톤 발표를 들으면서 평가를 해당 페이지에서 진행해주시길 바랍니다. 제출하신 모든 팀들의 구현물을 꼼꼼히 살펴보고, 리뷰 작성 및 평가를 부탁드립니다. 특히 본 교육과정은 백엔드스쿨이기에 프론트엔드 요소가 다소 부족할 수 있다는 점 미리 양해 부탁드리며, 디자인 요소가 아닌 백엔드 기술적인 요소들을 위주로 평가를 부탁드립니다. 또한, 작성해주신 피드백은 취합 후 정리해서 각 팀에 전달드릴 예정입니다.
이 피드백은 각 프로젝트에 대한 평가가 아닌, 개선 및 성장 방향성에 초점을 맞춘 피드백이라는 점 참고 부탁드립니다.
최대한 성의있게, 정돈된 문장으로 리뷰를 받게 될 훈련생분에게 도움이 되는 내용을 작성해 주시면 감사드리겠습니다
여러분들의 피드백이 모여 훈련생들의 향후 백엔드 개발자가 되기 위한 여정에 있어 많은 힘이 될 것 같습니다.
다시 한 번 이 자리를 빛내주신 점 감사드리며 즐거운 마음으로 해커톤 발표를 들어주세요. 감사합니다. -백엔드스쿨 운영진 드림-
평가시트 (각 항목에 점수를 기입해주시면 됩니다.)
번호
팀명
혁신성 및 기술 활용도 (20점)
목표 달성도 및 구현 능력 (70점)
발표 전달력 (10점)
피드백
1조
poco a poco
15
60
6
잘하신 부분 굉장히 많은 기능들을 가지고 있는 프로젝트입니다. 백엔드의 기능이 많아서 많은 기능들이 제공되고 있습니다. SSE와 같은 것으로 알림도 잘 구현했는데 발표에 드러나지 않아서 조금 아쉽네요. 프로젝트 완성도가 뛰어나고 테스트 케이스 같은 것들도 잘 하셨더라구요. 코드 구성이 명확하고 가독성이 높은 것으로도 보여요. 커밋 규칙도 잘 지켜지고 있구요. 개선 가능한 부분 Swagger의 문서화가 조금 아쉬웠습니다. 또한 주석처리에 javadoc 등을 활용하시는 것도 검토해보시면 좋을 것 같아요. SonarQube 등의 코드 정적 분석 도구들도 CI/CD에 추가해보시면 더욱 좋아보입니다. 버그 리스트 등을 Issues를 이용해 티켓을 발행하고 관리하는 것도 해보시길 바랍니다. 간단하게 Git Flow 비슷한 느낌의 브랜칭 전략을 사용하신 것 같지만 일관성이 조금 떨어지는 편으로 보입니다. Git Flow와 GitHub Flow 같은 것들도 좀 더 배워보시면 좋을 것 같습니다. 추후에 요청 유효성 체크와 프론트엔드 완성도, 인프라 구조를 좀 더 신경쓰시면 바로 프로덕션 환경 운영이 가능할 것으로 보이는 프로젝트네요.
2조
댕냥 ffㅗ짝
16
45
6
잘하신 부분 기획한 내용들을 잘 구현한 것으로 보입니다. Jacoco와 SonarQube와 같은 테스트와 정적 분석을 활용해서 커버리지를 확인하고 코드스멜을 줄인 것도 잘하셨습니다. 특히 캘린더 기반 서비스를 제공할 때, 논리적 구조를 짜기도 어렵고 화면에 표시하는 로직을 구성하기도 어려운데 굉장히 잘 구현하신 것 같네요. 전반적으로 완성도가 뛰어나보입니다. 배포상의 에러만 해결하셨으면 좋겠습니다. 문서화 기능도 잘 사용하신 것 같아 좋았습니다. 코드 구성이 명확하고 가독성이 높은 것으로도 보여요. 커밋 규칙도 잘 지켜지고 있구요. Github Flow를 활용한 것으로 보이는 브랜칭 전략까지 각 브랜치 앞에 이슈티커를 기재하시고 잘 작업을 진행한 것으로 보입니다. 개선 가능한 부분 아마 캘린더 서비스 개발, Rest Docs에 많은 시간이 소요되었을 것 같은데 다른 실 사용자들을 위한 더 좋은 기능들을 추가해 PWA 등을 적용한다면 실 사용자를 모을만한 애플리케이션도 될 수 있어 보입니다. 확인해보니 프론트엔드도 부트스트랩으로 반응형 구조가 되어 있는 것 같아요. 따라서 서비스 워커를 설치하고 메니페스트 등을 작성해서 PWA로 앱을 만들었을 때 서비스 운영을 해보는 것도 좋아보이네요. 주석처리에 javadoc 등을 활용하시는 것도 검토해보시면 좋을 것 같아요. 요청 유효성 체크와 인프라 구조를 더 신경 쓰시면 바로 프로덕션 환경 운영이 가능할 것으로 보이는 프로젝트입니다.
3조
냉삼조
10
50
8
잘하신 부분 처음에 기획한 내용의 상당수를 완성도 있게 구현한 것으로 보입니다. 프론트엔드 과정이 없었음에도 부트스트랩 등을 활용해서 프로젝트를 잘 구현한 것으로 보입니다. 스포티파이 API를 활용하는 동시에 크롤링을 통해 DB에 데이터를 저장하는 과정까지 잘 구현하셨네요. 웹디자이너와 협업 했다는 것도 인상적입니다. 해당 사항은 직무 면접에서도 활용 가능한 경험입니다. 코드 가독성이 높은 것으로도 보여요. 커밋 규칙도 잘 지켜지고 있습니다. Git Flow를 활용한 것으로 보이는 브랜칭 전략도 처음에는 일관성이 없게 작성하시다가 중간부턴 각 브랜치 앞에 이슈티커를 기재하시고 잘 작업을 진행한 것으로 보입니다. 개선 가능한 부분 포인트 기능을 구현한 것으로 보이는데 포인트를 가상의 돈이 아닌 결제와 같은 부분도 아임포트 API 등으로 추가해서 실제 가치를 지니면 더 좋을 듯 합니다. 주석처리에 javadoc 등을 활용하시는 것도 검토해보시면 좋을 것 같아요. 음원의 경우엔 가장 큰 문제가 저작권인데 Copyright free, Royalty free, 혹은 CC의 저작권을 가진 음원들을 S3를 통해 올릴 수 있고 재생도 해볼 수 있는 커뮤니티도 개발해보셨으면 좋겠네요. 추후에는 테스트 코드 등도 작성하여 백엔드 안정성도 검증해보시면 좋겠네요. 거기에 더해서 요청 유효성 체크와 인프라 구조를 더 신경 쓰시면 바로 프로덕션 환경 운영이 가능할 것으로 보이는 프로젝트입니다.
4조
계획이 없나영
13
45
7
잘하신 부분 짧은 시간 내에 아임포트를 활용한 포인트 충전, SSE로 실시간 알림, 웹소켓 채팅까지 잘 구현하셨습니다. 코드의 가독성이 좋고 명확합니다. 커밋 규칙을 일관성 있게 잘 따른 것으로 보입니다. 개선 가능한 부분 시연을 할 때 영상에 소리가 추가되어 있었다면 좋았을 것 같아요. 지도와 같은 기능이 포함되지 않은 것이 아쉽습니다. Swagger에 좀 더 명확한 문서를 작성하시면 좋을 것 같네요. 추가로 javadoc 주석을 추가하여 소스코드의 가독성을 늘리고 문서화를 쉽게 진행할 수 있습니다. 해당 컨벤션도 검토해보시면 좋습니다. 일부 메서드는 단일 책임의 원칙을 지키고 있지 않은 경우가 있습니다. 예를 들어 프로필의 파일을 업로드하거나 다운로드 하는 로직이 프로필 등록, 수정과 같은 메서드에 포함되어 있는데 해당 다른 유틸리티 클래스를 작성해보세요. 간단하게 GitHub Flow 비슷한 느낌의 브랜칭 전략을 사용하신 것 같지만 일관성이 조금 떨어져서 좀 더 배워보시면 좋을 것 같아요. 마지막으로 요청 유효성 체크 및 테스트가 작성되어 있지 않아서 추후에 추가해보시는 것을 추천합니다.
5조
개발의민족
15
40
6
잘하신 부분 업비트 API를 활용해 상당부분 완성도 있게 개발했습니다. 기획과는 달라진 점이 꽤 있지만 법적인 문제로 인한 것일 것으로 보입니다. 핵심 기능들을 잘 구성했습니다. 개선 가능한 부분 커뮤니티 기능이 아쉬운 편입니다. 분단위의 차트를 업데이트 하다보니 백엔드단의 안정성 등이 검증되었는지 확인해볼 필요성이 있습니다. 캐싱과 같은 기술들을 활용해서 같은 차트를 보는 사람들에게 같은 화면을 보여주는 방법이 있습니다. 주석처리에 javadoc 등을 활용하시는 것도 검토해보시면 좋을 것 같아요. 많은 트랜잭션이 일어나는 기능들이다 보니 mysql이 대신 삽입과 읽기에 뛰어난 nosql를 고민해볼 필요성이 있습니다. 마지막으로 요청 유효성 체크를 해보시는 것을 권장드리고 테스트가 일부분만 추가되어 있어서 추후에 테스트케이스도 완성 해보시는 것을 추천합니다.
6조
인규와 아이들
18
65
9
잘하신 부분 일단 시연영상으로 시작하여 디테일적으로 발표 퀄리티가 우수합니다. 추후에 좋은 발표자이자 개발자가 되실 수 있겠네요. Nginx를 활용해 로드밸런싱 진행을 했다는 것도 대단합니다. 서버를 분리해서 로드밸런싱을 동작시켰다면 정말 잘 진행하신 것으로 보입니다. 이중 검증을 통한 데이터 정합성도 잘 체크를 하신 것 같은데 그럼 동시성 처리에도 문제가 없게 트랜잭션으로 구현하신 것 같네요. SonarQube와 Jacoco를 활용해 정적 분석을 진행하고 278개의 테스트 코드와 코드커버리지를 검사해 기준치 이상만 배포되게 했다는 것은 실제 운영과 배포로 나갈 준비가 되었다는 것입니다. 개선 가능한 부분 추가로 쿠버네티스와 같은 컨테이너오케스트레이션도 해보시면 좋을듯합니다. 기능적인 면에선 아이디어가 심플하고 기술적인 부분만 강조되어 아쉬운 면이 있습니다. 주석처리에 javadoc 등을 활용하시는 것도 검토해보시면 좋을 것 같아요. 이러한 개발 능력을 활용해서 실제 배포되어 실사용자 트래픽을 유지 관리를 해보신다면 좋은 결과를 얻으실 수 있겠습니다.
7조
태조왕건우와 백성들
11
50
7
잘하신 부분 전반적인 핵심 기능의 완성도가 높습니다. 커뮤니티 기능과 같은 부가 기능도 필요한 기능은 모두 구현되어 있습니다. 핵심 비즈니스 로직부터 관리자 기능까지 모두 매끄러운 플로우로 개발하신 것이 인상적이고 Redis, 웹소켓 채팅, SSE와 Import 같은 것들도 잘 적용하셨습니다. 기본적인 과제가 주어졌다고 하면 그 과제를 충실하게 수행한 것으로 보이는 프로젝트입니다. 전반적으로 코드 구성이 깔끔하고 가독성도 좋은 편입니다. ApiIgnore 과 같은 어노테이션을 사용해서 API 문서화 대상에서 제외한 부분이 보이는데 이를 통해 필요하지 않은 코드를 API 문서에 노출시키지 않는 것은 잘 하신 것으로 보입니다. 커밋 규칙도 일관성 있게 잘 따르셨네요. 개선 가능한 부분 요청 유효성 체크 및 테스트도 더 추가해보시면 좋을 것 같네요. 추가로 javadoc 주석을 추가하여 소스코드의 가독성을 늘리고 문서화를 쉽게 진행할 수 있습니다. 해당 컨벤션도 검토해보시면 좋습니다. 구체적인 브랜칭 전략은 사용하지 않은 것으로 보이며 Git Flow와 GitHub Flow 같은 것들도 좀 더 배워보시면 좋습니다. Jacoco, SonarQube를 수행해보시면서 차별화된 기능들을 더 추가해보시면 완성도가 더 높아질 것으로 보입니다.
8조
아이다섯이둘[I5E2]
15
50
7
잘하신 부분 기획의도가 명확하고 이 문제를 해결하기 위해 새로운 기능들을 많이 시도해본 것으로 보이는데요. eformsign과 같은 전자계약 API를 활용하고 있고 농업정보 API, Kakao Map API, 토스 API 등을 활용했기에 어느 정도 복잡한 문제를 해결할 수 있는 프로젝트라고 평가합니다. postman으로 문서도 잘 작성하신 것으로 보여서 좋은 경험을 하신 것 같네요. 브랜칭 전략도 Github Flow와 유사한 브랜칭 전략으로 티커를 입력하여 잘 구사하셨습니다. 커밋 컨벤션도 잘 맞춰져 있고 코드도 가독성이 좋네요. 사용자 기능 흐름도 다이어그램을 굉장히 잘 구체적으로 작성하셨습니다. 개선 가능한 부분 전반적으로 에러가 많이 발생하지만 테스트케이스들을 추가해서 테스팅을 많이 진행하면 실 사용도 가능할 것으로 보입니다. 주석처리에 javadoc 등을 활용하시는 것도 검토해보시면 좋을 것 같아요. 전반적으로 에러내성을 가진 시스템을 구현하면 좋을 것으로 보입니다. 마지막으로 요청 유효성 체크 및 테스트가 작성되어 있지 않아서 추후에 추가해보시는 것을 추천합니다.
9조
web
10
50
8
잘하신 부분 전반적인 완성도가 뛰어난 팀입니다. 기획의 볼륨은 좁지만 여러가지 고민이 많이 녹아든 프로젝트입니다. 채팅과 같은 구현이 완성도 높게 되어 있고 커뮤니티 기능도 우수한 편입니다. Nginx와 리버스프록시 https를 적용한 것이 눈에 띄네요. 지도 연동도 잘 하셨고 캐싱과 같은 것도 추가한 것이 재밌네요. 커밋 규칙도 일관성 있게 잘 따른 것으로 보입니다. Git Flow와 비슷한 브랜칭 전략을 사용한 것으로 보이네요. front와 back을 나누려고 시도한 것이 좋습니다. 개선 가능한 부분 코드 가독성에서 좀 더 개선이 가능해 보입니다. 메서드명들이 명확하지 않은 것들이 자주 보입니다. Issues를 버그 트래킹을 위해 사용할 수 있습니다. 프로젝트 기능 개발 후 버그 리스트를 Issues에 기록, 해결하며 지속적으로 소프트웨어의 품질을 개선하고 프로젝트 관리를 효율적으로 진행 할 수 있습니다. 요청 유효성 체크 및 테스트도 더 추가해보시고 Jacoco, SonarQube를 수행해보시면서 차별화된 기능들을 더 추가해보시면 완성도가 더 높아질 것으로 보입니다.
10조
우아한 남매들
11
45
4
잘하신 부분 3가지 외부 API(아임포트, S3, 도로명주소)를 사용했다는 것이 눈에 잘 들어오는 프로젝트입니다. 개선 가능한 부분 복잡한 기능을 잘 구현해주신 것 같은데 굳이 아쉬운 부분을 얘기하자면 기능의 볼륨이 좀 작아서 아쉬웠습니다. 완성도가 높으나 테스트도 더 추가해보시고 Jacoco, SonarQube를 수행해보시면서 차별화된 기능들을 더 추가해보시면 완성도가 더 높아질 것으로 보입니다.
11조
중요한 건 꺾이지 않는 민우
13
55
6
잘하신 부분 상당히 최적화 및 리소스 절약에 관한 고민을 많이 하신 팀으로 보입니다. 또한 요청 유효성 검사 등을 사용하셨다고 소개한 유일한 팀인 것으로 보이고 Jacoco와 같은 커버리지 체크도 진행한 것이 좋네요. 백엔드 커리큘럼으로서 뛰어난 프로젝트라 생각되네요. 스케줄링과 batch의 방식으로 랭킹을 구현하신 것도 잘하신 겉 같습니다. 실제로 배포된 사이트를 확인해보면 https까지 잘 적용되어 있고 속도가 굉장히 빠릅니다. ms 수준까지 api 호출, 응답 속도를 고려했다는 것이 보이네요. 요청 유효성 체크 및 테스트도 잘 수행하신 것으로 보입니다. 기능의 볼륨을 좀 더 늘리시면 프로덕션 환경까지 고려해볼 수 있겠네요. 개선 가능한 부분 필요성에 따라 랭킹 기능을 ZSet을 사용했다면 더욱 빠르게 실시간 랭킹까지 구현할 수 있었을 것이란 아쉬움이 있네요. 좀 더 속도를 높이고 싶으시면 캐시와 prefetch와 같은 것도 고려해보시면 좋을 것 같습니다. 동시성 문제를 해결하지 못했다고 하는데 Transaction만 잘 사용해도 동시성을 해결할 수 있는 정도의 기능이라 생각이 됩니다. 기능 볼륨이 좀 작아 완성도를 좀 더 높이면 좋겠습니다.
13조
한사랑코딩회
8
38
7
잘하신 부분 최종 인원이 3명인데 적은 인원으로 CRUD에 잘 집중해서 개발한 조로 보입니다. 실시간 알림 등의 구현을 잘 구현했네요. 인원도 적은데 요청 유효성 체크 및 테스트도 부족하지만 잘 작성하신 것으로 보입니다. 인원의 문제로 양과 질보단 디테일에 집중한 모습이 좋네요. 개선이 가능한 부분 스크린샷을 통한 인증의 경우 챌린저스의 특허가 사진 인증을 통해 챌린지 달성도를 확인하고 분배하는 청구항을 포함하고 있기 때문에 실제 프로덕션 서비스를 제공하려면 해당 특허 청구항을 피하는 방법을 생각해보셔야 할 듯 합니다. 기능이 볼륨이 작아 완성도를 더욱 높여주시면 좋을 듯 합니다. 주석처리에 javadoc 등을 활용하시는 것도 검토해보시면 좋을 것 같아요. 향후 개선 사항은 보통 프로젝트가 끝나면 진행되지 않는 경우가 많은데 꼭 개선을 해주셨으면 좋겠습니다.
14조
잠은죽어서자조
10
45
5
잘하신 부분 기본적인 기능들의 완성도를 집중해서 잘 개발하신 것으로 보입니다. S3 버킷을 활용하고, 채널톡 API 등을 활용하셨다는 것이 인상 깊네요. 덕분에 이미지 로딩 속도나 사이트 이용에 UX가 좋아진 것으로 보입니다. 테스트를 잘 작성해주셨습니다. 개선이 가능한 부분 다만 배포된 환경에서 확인이 늦으졌던 것으로 확인되는데요. 배포상태가 항상 끊기지 않게 CI/CD를 하는 구성이 잘못된 것 같아요. 그런 부분도 한 번 확인하면서 프로젝트를 진행했으면 더 좋았겠네요. 주석처리에 javadoc 등을 활용하시는 것도 검토해보시면 좋을 것 같아요. 기능의 볼륨이 좁아 약간 아쉽습니다. 통계에 대한 고민도 더 해보시고 데이터가 중요한 프로젝트이다 보니 데이터 시각화에 대한 고민도 해보시면 좋을 것 같습니다. 마지막으로 요청 유효성 체크와 같은 것도 더 신경 쓰시고 인프라를 더 개선해보시면 프로덕션 환경까지 고민해볼 수 있어보입니다.

총평

모든 팀들 다 고생많으셨고 모두가 핵심로직들을 잘 만든거 같아서 뿌듯합니다.
일단 다들 교육받은 내용 이상으로 많은 것을 고민하고 프로젝트를 구현한 것들이 보였어요.
특히 WBS를 활용한 협업도 준수하게 진행했고 새로운 기술이 많이 추가됐는데 문제 없이 잘 구현했다는 것 자체가 여러분 레벨이 오른 것이 아닌가 생각합니다.
또 눈여겨 볼 점은 다들 프론트엔드 교육을 안 받았는데 이 정도면 전체적으로 프론트엔드도 굉~장히 잘 했다고 보이는데.
개발자로 살아가려면 다른 개발자들의 니즈들을을 잘 파악하는 것도 중요한데 프론트엔드 개발자와도 잘 일하겠다 싶습니다.
마지막으로 여러분이 교육이 끝난다고 해서 배우는게 끝인게 아니잖아요?
RxJava, MSA 아키텍처, 쿼리튜닝, 캐싱, 개발 서버 분리, 로드밸런서, 쿠버네티스나 도커스웜, 프로메테우스나 그라파나 같은 모니터링 시각화 툴 등 개발부터 인프라까지 배울 것은 많이 남아있습니다.
저도 모르는 것들이 꽤 많은데 계속 배우고 있거든요. 여러분도 다들 교육과정이 끝난 이후에도 배움을 게을리 하지 않는다면 틀림없이 아주 우수한 백엔드 개발자들이 되실거라 봅니다.
이상으로 코멘트 마치겠습니다.