현직 반백수 상태로 면접 보러 다니는 개발자입니다.
면접 중에 받은 질문인데, 다른 개발자분들은 어떤식으로 디자인하는지 궁금해서 여쭤봅니다 하하하;
Q: 학생의 application을 조회하고 그 결과를 나타내는 웹 어플리케이션을 디자인.
조건:
1. 학생 당 1개의 application만을 접수.
2. 면접관들은 application에 대해 점수를 매김.
3. 조회할 때는 학생 아이디를 사용하여 조회.
4. 모든 데이터는 DB에 저장.
5. Spring/Hibernate 프레임워크 사용
이렇게 해서 DB에서부터 Front-end까지 화이트 보드에 디자인을 하는 면접이었네요.
제가 한 디자인을 간략하게 보자면,
1. DB부분
Table 4개
Student - 학생아이디 및 정보들..
Reviewer - 면접관아이디 및 정보들..
Application - application 아이디, 학생 아이디, application 내용
Score - Application 아이디, 면접관 아이디, 점수
2. Spring/Hibernate 설정 Table 당 Entity와 id 및 관계 설정, Bean 설정, POJO 생성
3. SQL 쿼리
조회 조건이 학생아이디.
출력 내용은 면접관 이름과 해당 Application의 점수.
(쿼리 어떻게 짜시나요? 전 그냥 테이블 4개 다 써서 join해서 가져왔습니다만..)
4. Business/Service 로직...이래봐야 DAO 호출해서 쿼리값 받아온 뒤 리턴.
5. Front-End는 JSP 이용해서 단순 데이터 출력.
-------------------------------------------------------------
프게 웹 개발자분들의 디자인 구성이 궁금합니다.
많이 배워가고 싶어요 ㅠㅠ