데브코스 3차 기간 동안의 회고
- 3차 기간 : 2024.06.03 ~ 2024.06.30
잘한 점
프로젝트 오프라인 진행
데브코스 2차 팀 기간에서 잘한 점 중 하나가 멘토님과 팀원들을 직접 만나 이야기해 본 것이었다. 그래서 3차 프로젝트를 할 때, 여건이 된다면 오프라인으로 프로젝트를 진행하고 싶었다. 그래서 프로젝트 팀 구성을 할 때, 오프라인이 생각 있는 사람 위주로 결성을 하게 되었다. 개인 일정이나 거주지 이슈로 모든 사람들과 오프라인으로 진행할 수는 없었지만, 온라인으로만 진행하는 것보다는 이점이 있다는 것을 느낄 수 있었다.
- 나의 의견에 대한 즉각적인 피드백이 가능하다.
- 프로젝트 이해나 친목을 도모하기에 유리하다.
최종 프로젝트는 프로그래머스의 강의장을 오픈하여 오프라인으로 프로젝트를 진행할 수 있다. 이때 오프라인의 이점을 제대로 느끼고 퀄리티 높은 프로젝트를 진행하고 싶다.
개인 프로젝트 진행
2차 프로젝트에서 아쉬웠던 점이 데이터 적재 자동화를 구현하지 못했다는 점이었다. 그래서 EC2/Crontab을 활용한 개인 프로젝트를 진행하였고, 이전 프로젝트로 얻지 못했던 경험을 보완할 수 있었다.
배운 점
기술 블로그 작성
이번 멘토님은 "기술 블로그 작성"을 멘티에게 강조하였다. 본인이 어떤 것을 공부하였고, 어떤 내용을 심도 있게 공부해 보았는지를 보여주기에 가장 적합하다는 이유였다. 이미 블로그를 작성 중인 사람은 멘토님이 블로그를 읽어보고 피드백을 알려주셨다. 멘토님의 피드백은 다음과 같다.
- 꾸준하게 작성하고 있고, 개인 프로젝트도 진행하고 있어 성실함이 보이는 것 같다.
- 프로젝트에서 생각해 볼 수 있는 내용 (csv vs parquet)
- 프로젝트에서는 모두 csv를 사용했지만, 현업에서는 거의 쓰이지 않는다.
- 파일 형식 중 가장 많이 쓰이는 것이 parquet이며, avro, orc 같은 파일 형식도 존재한다.
- parquet이 장점만 있지는 않기 때문에 이 부분은 직접 공부해 보면 좋을 것 같다.
- DAG와 Task 수의 밸런싱과 DAG 생성 시 주의할 점
추천하는 CS 공부 방식
막연히 프레임워크나 기술에 대한 이해를 위해 CS 공부를 하는 것은 한계가 존재한다. 그렇기 때문에 멘토님은 다음과 같은 공부 방식을 추천해 주셨다.
- 프레임워크 -> CS로 반대로 파고 들어보자!
- X : CS를 공부하면 Airflow나 Spark를 이해할 수 있을 거야!
- O : Airflow와 Spark를 파보면서 여기에 필요한 CS 지식이 뭐가 있지?
- 예) Airflow에서 Task 간 데이터를 전달하고 싶은데 왜 메서드 argument로는 안되지? - Process의 IPC
- 예) Spark에서 왜 Executor 개수에 비례해서 속도가 빨라지지 않지? - Shuffle, Repartition
- 프레임워크를 다양한 방식으로 사용해 보면서 깊게 생각해 보는 탐구의 시간이 필요하다.
아쉬운 점
강의 집중 부족
3차 기간 중에 감기도 걸리고, 새로운 내용과 어려운 내용을 복합적으로 배우다 보니 집중력이 떨어지고 완전히 이해하기에는 어려움이 있었다. 특히 Spark와 Kafka 부분을 이해하지 못한 부분이 많은 것 같다.
어떻게 개선할 것인가?
Spark & Kafka 복습
최종 프로젝트 시작 전에 Spark와 Kafka에 대해 복습하고, 사용법 및 구조 등에 대해 정리하는 시간을 가지려고 한다.
질문 정리
최종 프로젝트를 위한 네트워크 지식
데브코스 이전 기수의 최종 프로젝트를 보면 대부분 네트워크를 사용해 웹 구성을 하였다. 그러나 데브코스에서 해당 내용은 자세히 다루지 않았기에 학습을 하려면 어떻게 하는지 질문드렸다. 그러자 두 권의 책을 추천해 주셨다.
- 따라 하며 배우는 AWS 네트워크 입문 : 현재는 절판인데, 구할 수 있다면 꼭 읽어보라고 하셨다.
- AWS 교과서 : 이 책은 초반 부에 네트워크에 대한 설명이 나와있다.
회사에 입사하게 되면 인프라 부분은 모두 구축이 되어있는 상태인 경우가 많고, 데이터 엔지니어는 데이터 역할만 수행하면 된다고 한다. 그러나 현재는 공부를 하기 위해 직접 인프라를 구성하는 것이므로 클라우드에 대한 자세한 지식까지는 몰라도 된다고 한다.
다음 학기 준비
인턴 지원
데브코스를 통해 데이터 엔지니어링의 전반적인 내용을 배웠기 때문에 이를 회사에서는 어떻게 사용되고 있는지 직접 확인하고 배워보고 싶다는 생각이 들었다. 특히 대용량 데이터를 일상에서 얻기에는 무리가 있기에 좋은 경험이 될 것이다. 그래서 지원할 인턴은 다음과 같다.
- 당근 썸머테크 인턴십
- 서류에서 떨어진다면, 다음엔 이력서/포트폴리오를 보충하면 된다!
- 면접에서 떨어진다면, 면접 경험을 한 것에 의의를 두면 된다!
- 떨어져도, 붙어도, 나에게 도움이 되기에 하나는 외부 인턴으로 지원하였다.
- ICT 학점연계 인턴십
- 다양한 회사와 연계된 ICT 인턴십을 통해 학점도 받고 인턴 경험도 할 수 있다.
- 총 3개의 회사에 지원할 수 있으므로 적절히 선택해서 지원할 예정이다.
팀 프로젝트
인턴과 함께 대학교 친구들과 데이터 엔지니어링 관련 프로젝트를 진행할 예정이다. 주기적으로 업데이트되는 데이터를 바탕으로 ETL을 작성하고 Tableau를 활용한 시각화 및 웹 브라우저로 접근성을 높인 프로젝트를 진행할 것이다. 이미 인원과 주제 선정, 진행 일정이 어느 정도 마무리 되었기에 학기가 시작하면 본격적으로 진행할 예정이다.
'기타 > 회고록' 카테고리의 다른 글
[회고] 2024년 9월 (24.09.01 ~ 24.09.30) (4) | 2024.10.03 |
---|---|
[회고] 데브코스 최종 프로젝트 (24.07.15 ~24.08.19) (8) | 2024.09.04 |
[회고] 데브코스 3차 팀 프로젝트 (24.06.10 ~ 24.06.14) (0) | 2024.06.15 |
[회고] 개인 프로젝트 - FC Online 공식 경기 분석 (24.05.25 ~ 24.06.05) (2) | 2024.06.08 |
[회고] 데브코스 2차 기간 (24.05.06 ~ 24.06.02) (0) | 2024.05.28 |