학부 시절 전공에 대한 전체적인 이해를 높일 수 있도록, 신청할 수 있는 전공과목이라면 최대한 수강하기 위해 노력하였고, 졸업에 요구되는 전공 60학점 수강을 넘어 77학점을 수강하였으며, 다양한 이론과 간단한 실습을 통하여 CS의 전반적인 내용을 알 수 있게 되었습니다. 또한 어떤 흥미로운 내용을 접했을 때 어떤 내용이고 무엇을 다루고 있는지 확인하고 있습니다. 이런 과정을 통하여 어떤 내용을 접하거나 무슨 문제를 해결해야 할 때, 어떤 내용을 다룬 다는 것을 빠르게 알게 되는 편이며, 무엇을 학습하면 되겠다.를 인지함으로써 타인에 비해 학습이 빠른 것 같습니다.
또한 OOOOO 전공 Java 트랙을 통해 Java와 Spring을 배우고 내부 프로젝트에 적용해 봄으로써, Java에 대한 이해와 Spring에 대한 이해를 키울 수 있었습니다. OOOOO에서 Java, Spring, Vue를 배워나가는 과정 속에서 2개월간 페어를 바꿔가며 진행했던 팀/페어 프로젝트를 통하여 간략하게 협업이 어떻게 이루어지는지 알 수 있었고, 협업에서 필요한 부분 그리고 협업을 진행하는 데 있어서 어려운 부분이 무엇인지 배울 수 있었습니다. 또한 공공 데이터를 덤프 한 데이터를 DB 상에 재구성하여 사용함으로써 데이터베이스를 어떻게 설계하는 것이 효율적인지, 어떻게 쿼리를 사용하는 것이 효과적이고 개발자들이 Plain한 SQL문(JDBC)를 사용하는 것이 아니라 SQL Mapper(MyBatis)를 사용하는 이유가 무엇인지 깨달을 수 있던 기회였습니다.
이런 과정들을 통하여 개발자들이 왜 프레임워크를 만들고 라이브러리를 만드는지 배울 수 있던 기회였으며, 프레임워크와 라이브러리를 제대로 사용하기 위해서는 본인만의 스타일 대로 개발해나가는 것이 아니라 프레임워크/라이브러리 공식 문서에서 제시하는 방안에 맞게 절차에 맞는 방향으로 개발해나가는 것이 중요하다는 것을 배울 수 있었습니다. 이런 OOOOO 1학기 과정에서 배우고 깨달은 부분을 바탕으로, 현재 OOOOO 2학기 과정에서 적용해 Spring 기반 WebRTC(Openvidu) 팀 프로젝트를 진행 중에 있습니다.
또한 이전에 프로젝트에서 효율적으로 사용했던 SQL Mapper(MyBatis) 외에, 또 다른 한 축을 담당하고 있는 ORM(JPA Hibernate)을 학습하기 위해 JPA를 공부하여 프로젝트에 적용하고 있으며, 젠킨스로 배포하고 있습니다. 또 개인적으로 개발자는 항상 공부하고 노력해야 한다 생각하며, 문제 상황에 맞는 알고리즘을 효과적으로 사용할 수 있는 것이 가장 중요한 능력 중 하나라고 생각합니다.
알고리즘의 중요성을 깨닫고 공부해나간 이후 꾸준히 200일 넘게 OO에서 알고리즘 문제를 풀어오고 있으며, OO 상시 SW 역량 테스트 B형을 취득하는 과정에서 알고리즘의 중요성을 다시 깨달을 수 있었습니다. 노력하는 또 다른 과정으로 Effective Java 책을 읽고 개발에 적용하기 위해 노력하고 있으며, 다양한 책을 구매하여 학습/적용하기 위해 노력하고 있습니다.