스타트업 인턴

늦었지만 4월을 보내며 (feat: FastAPI도 & 카테캠 & 종만북)

지미닝 2024. 5. 7. 01:29

이번 회고는 회사 얘기만 쓰는건 아니고, 전반적으로 요즘 어떻게 지내는지 쓰려고 왔다!

FastAPI를 하게 되다!!!

블로그에 한 번 쓴 적이 있는지 모르겠는데, 이번에 회사에서 일을 하면서 FastAPI를 다루게 되었다!

 

내가 처음 웹 개발을 접하게 된게 (전공 빼고) Python FastAPI였다! 

 

당시 1학년이었는데, 아무것도 모르는 상태에서 인공지능 동아리에서 어쩌다보니 웹 백엔드를 했었다.

https://github.com/stopmin/AID_WEB

 

GitHub - stopmin/AID_WEB: 부산대학교 인공지능 동아리 AID

부산대학교 인공지능 동아리 AID. Contribute to stopmin/AID_WEB development by creating an account on GitHub.

github.com

 

그때 정말 Github도 몰랐고, pre-commit 이런건 더더더욱 몰랐고 commit convention, git전략 같은 기본적인 협업에 대해서도 아무것도 알지 못했다. 차라리 그것만 모르면 좋을지언정, 백엔드가 무슨 역할을 하는지도 몰랐다 ㅎㅎ

 

입학한지 1학기밖에 안됐으니 충분히 모를 수 있지!!

 

 

여튼 그렇게 무지의 상태로 하다보니 버겁기도 하고 그 당시 큰 흥미를 느끼지 못하다 웹 프론트엔드를 해주실 분이 없어서, React도 했었다.

https://github.com/stopmin/AID_WEB_FRONT

 

GitHub - stopmin/AID_WEB_FRONT: 이서연&정지민-AIDWEB 프론트엔드 도전

이서연&정지민-AIDWEB 프론트엔드 도전. Contribute to stopmin/AID_WEB_FRONT development by creating an account on GitHub.

github.com

 

React & Tailwind로 개발을 하다가 해커톤도 나갔었다.

 

 

그러다 다시 백엔드에 대한 갈증이 생겨서 다시 Spring공부를 시작했고, 인턴까지 하고 있었다!! (FastAPI -> React -> Spring 돌고돌아 스프링..)

 

다시 백엔드를 하게 되면서 "언젠가 다시 FastAPI"를 할 날이 올까?"라는 생각을 문득했다.

나름의 아픔으로 남은 기억이 있어서 (마치 중학생 때, 얼핏 미적분을 배우고 너무 어려운 기억에 겁먹은 상태) 펼쳐보지 않은 과거였다.

 

 

그러다가 최근 회사에서 일을 받았는데, 

블로그에 직접적으로 자세하게 쓰긴 힘들겠지만 대략적으로 설명하자면

어떤 주문에 대한 Text/Image가 주어졌을 때 LLM 모델을 거치도록 해야했다.

 

그런데 아무래도 Kotlin + Spring으로는 AI 모델(특히 오픈소스 모델)을 다루기가 힘들다보니... Python을 하게 되었단 말이다.

 

 

선택권이 Flask & FastAPI & Django가 있었는데, 서버 규모가 크지 않으며 빠른 동작을 필요로 하고 있고, 특히나 최근 FastAPI가 새로운 기술에 대해서 유연성이 높은 편으로 알고 있기도 했고 이미 한번 해본 프레임워크이기 때문에 선택했다. (물론 기억은 안나지만, 해봤다는 사실이 나에게 심리적 안정감을 줬다..)

 

 

여튼!! 

 

FastAPI를 하고 있다!!!

 

소감

 확실히 Spring으로 백엔드를 꽤 하다 돌아오니, 프레임워크의 대략적인 흐름을 알고있다는게 최대 장점인 것 같다.

 Spring에서는 뭐가 있지만, FastAPI에서는 직접 구현해서 써야한다던가, 어떤 편의 메소드가 있다던가에 대해서 서로 비교하면서 학습할 . 수있기 때문에 학습이 이전보다 빠르다는 점도 장점이다.

 

얼마전에 부경대에서 우아한형제들의 제이슨이

"Spring을 사용하는 이유를 알려면 다른 프레임워크도 해보셔야 합니다."라고 하시면서

 

하나의 프레임워크에 종속된, 하나만 할 줄 아는 개발자가 되지 말라고, 여러가지를 많이 접해보길 바란다는 말씀을 하셨다.

 

그리고 실제로 어떤 프로젝트의 성질에 따라서 필요한 스택이 달라지기 때문에, 또한 언젠가는 스프링이... 스프링의 시대가 갈지도 모른다....

 

아무튼!! 그런 면들도 생각하면 요즘 대세이기도 하고, 앞으로 있을 미래에 유연하게 대처할 수 있는 FastAPI를 학습하는 것은 나에게 정말 좋은 기회라고 생각했다!!!

 

 

따라서 감사하다는 마음으로 하고있다 ㅎㅎ

 

지금은 로깅까지 구축했고 Logstash에 대해서 더 공부해봐야 할 것 같다... ㅠㅠ

 

 

카테캠 붙다!!

카테캠을 붙게 되었다 ㅎㅎ

 

솔직히 지원하면 당연히 붙을 것 같았는데, 할지 말지 엄청 고민하다가, 붙으면 더 고민해봐야지 했다.

근데 하필 남자친구도 같이 붙은거다!!! 그래서 하... 남자친구랑 같이 너무 하고 싶어서 냅다 등록했다.

 

강의는 FastCampus강의인데 솔직히 품질은 잘 모르겠다. (영한킴 최고)

 

근데 카테캠 자체는 취지도 좋은 것 같고 1기에 비해서 개선하려 노력한 흔적이 보여서, 이러한 기회를 지역군 학생들에게 제공하려고 하는 마음에 정말 감사할 따름이다.

 

 

특히나 이번에 야구게임을 구현할 일이 다시 생겼는데, 

https://github.com/next-step/java-baseball-precourse/pull/109

 

[부산대 BE_정지민] 미션 제출합니다. by stopmin · Pull Request #109 · next-step/java-baseball-precourse

다들 수고하셨습니다 🔥🔥 PR이 조금 심심해서 구현하면서 고민했던 부분이랑, 미래의 누군가가... 제 코드를 리뷰한다면 조금 도움이 됐으면 해서 정리해봤습니다 :D 짜다보니 계속 부족한 부

github.com

내가 자바도 못할 때..짠 코드보다 훨씬 더 잘 짠거같아서 기분이 좋았다.

 

확실히 회사다니고 스터디도 여러개 하면서 다른사람의 코드를 많이 보고 체화하다보니 코드가 엄청 많이 는 것 같다!!!

 

우테코 프리코스 하면서, "언젠가는 자바로 야구게임 다시 짤 일이 있을까? 더 늘어서 하면 정말 기분이 이상하겠다." 생각했는데 다시 이렇게 구현해볼 기회를 주셔서 기대에 부응하고자 열심히 구현했다!! 

 하루컷이라 조금 아쉽긴 하지만 다음 과제는 미리 시작해서 더 품질좋은 코드를 짜보고 싶다!

 

 

여튼 카테캠 붙어서 나름 좋게 생각하면서 이겨내고 있다.

 

남자친구와 알고리즘 스터디 !!

요즘 또 태윤이와 알고리즘 스터디를 하고 있다.

태윤이오빠가 전역하기 전에 만든 레포인데 최근 꽤 활성화 돼서 기분이 좋다!!

https://github.com/stopmin/Algorithmic-Problem-Solving-Strategies

 

GitHub - stopmin/Algorithmic-Problem-Solving-Strategies: 태윤과 지민의 종만북+알고리즘 뽀개기

태윤과 지민의 종만북+알고리즘 뽀개기. Contribute to stopmin/Algorithmic-Problem-Solving-Strategies development by creating an account on GitHub.

github.com

 

서로 조금 속도가 달라서 나는 종만북을 격파하고 있다.

그런데 앞에 Drive회고에서 썼듯이 조금 내 자신을 채찍질 해서 한동안 많이 힘들었다.

 

그렇지만 이제 스스로 많이 응원하면서 하고 있다.

정말 많이 방황하고 이것때문에 다른 일들도 번아웃 비스무리하게 올 뻔 했는데 이제는 조금 많이 극복해서 내 속도를 찾아낸 것 같다.

 

 

 

아무튼...

아무튼 요즘은 조금 잘 지내는 편인 것 같다.

 

2학기에 무엇을 할지 많이 고민중이지만, 분명한건 2학기도 할게 정말정말 많을 것 같다!!!

그래서 많이 기대된다😃

 

 

 

5월 벌써 1주일 지났지만 파이팅이다 지민!!