
현재까지 무엇을 배웠고 무엇들을 했는가
첫 번째는 '자바의 신' 1, 2권을 학습하면서 자바의 기본기를 다지는 시간이었습니다. 두 번째는 기술에 대한 트레이드 오프를 생각할 수 있게 되었습니다. 세 번째는 데이터베이스 테이블에 대해 고려해야 할 사항들을 알게 되었습니다.
서적을 통해 자바에 대한 기본기를 다시 다지는 시간을 가졌습니다. 이미 알고 있다고 생각했던 내용이었지만, 멘토님이 응용하거나 심화해서 질문을 해주시니 제가 자바에 대한 학습이 단순한 프로그래밍 지식에 머물러 있다는 것을 알게 되었습니다.
이후로 자바 기술을 학습할 때 블로그나 책에서 주는 지식을 이해하는 것을 넘어서 원인, 결과, 해결 방법까지 고려하면서 학습하게 되었습니다.
해결 방식이 여러 개 있지만, 현재 상황에서 어떤 해결 방법을 사용해야 하는지를 아는 것이 중요하다는 것을 깨달았습니다. 대다수가 사용하는 해결 방식이 지금 환경에서는 적합하지 않을 수 있기 때문에 다양한 해결 방법이 왜 필요한지 학습하게 되었습니다.
데이터베이스 데이터를 구조화해서 저장하고, 빠르게 조회하며, 데이터 접근 기술에 따라 적합한 테이블 구조를 유지하는 시스템이라고 생각했습니다. 테이블을 하나의 객체로 생각하는 방법도 데이터베이스를 독립적으로 관리할 수 있는 방법이라는 것을 알게 되었습니다.
이전에는 잘못 알고 있었던 것에 대해 깨달은게 있는가
첫 번째는 MySQL의 JSON 필드입니다. 두 번째는 데이터베이스 테이블 구조입니다.
저는 JSON 필드가 최신 MySQL에서는 인덱스 사용이 가능하기 때문에 필드가 다양하거나 굳이 레코드로 관리하지 않아도 되는 경우 사용하기 적합하다고 생각했습니다. 그런데 생각보다 JSON 필드가 RDBMS에서 최적화되지 않아 용량을 많이 차지하거나 성능이 일반 필드를 조회하는 것보다 느리다는 것을 알게 되었습니다. 추가로 성능을 위해 필드를 여러 테이블에 중복 사용하는 것이 당연하다고 생각했던 것을 고치게 되었습니다.
멘토님의 실력에 대한 만족도는 어떤한가
항상 만족합니다. 단순한 기술에 대한 질문이 아니라 실무 환경에서 이 문제를 해결하기 위한 방법에 대한 키워드를 던져주시고, 제가 잘못 알고 있는 지식을 공식문서나 책을 통해서 오류를 고쳐주십니다.
최근 1개월 동안 멘토링에서 어떤 것들이 좋았는가
멘토님이 저에게 지식이나 학습해야 하는 키워드를 주시는 것도 좋았습니다. 이직을 준비하면서 동일한 연차의 다른 개발자의 스펙을 보게 되니 자존감이 많이 내려갔습니다. 멘탈 케어를 해주시는 모습이 너무 좋았습니다.
최근 1개월 멘토링에 대한 자유로운 감상 및 후기
아쉬운 한 달이었습니다. 여러 일이 발생하다 보니 그거에 지쳐서 혼자 넘어진 한 달이라고 생각됩니다. 이 글을 작성하면서 다시 기운내서 학습하려고 합니다.