ft_printf 과제를 if 문을 사용하지 않고 했어요. 아무래도 printf를 구현하자면 if-else 문을 떡칠하게 되잖아요. 그렇게 하기 싫어서 d, c 구분자만 먼저 조건문 없이 구현했는데, 하다보니 전부 다 이런 방식으로 작성할 수 있을 것 같더라고요. atoi도 같은 방식으로 만들어보고 '되네?' 싶어서 전체 함수를 그렇게 작성했죠. 다들 코드가 비슷비슷한 상황에서 저만의 방식으로 작성하니까 주변에서 변태 소리 많이 들었어요.
if 문을 사용하지 않았다뿐이지 조건 분기는 들어가요. 함수 포인터로요. 들어온 캐릭터가 'c'면 0, 'd'이면 1을 반환하는 식으로 각각의 구분자를 숫자로 처리해요. 그리고 함수포인터에 반환한 숫자를 인덱스로 넣어줘요. 그러니까 f[0]은 구분자가 c일 때 처리하는 함수, f[1]은 구분자가 d일 때 처리하는 함수... 이런 식으로 흐름이 이어지죠. 이렇게 짜면 제 코드를 이렇게 자랑할 수 있기는 한데 머리가 아파요. 말록 가드하다가 뇌 터질 뻔하기는 했는데 그래도 잘 통과했어요.
하나에 꽂히고 잘하고 싶다는 생각이 들면, 시간을 갈아 넣는 편이에요. 피신할 때 잠과 밥도 거르고 코딩만 하다 보니까, 주변 사람들이 많이 걱정해주셨어요. 그때는 꼭 붙고 싶다는 생각 하나였어요. 농담 삼아 했던 말 중에 ‘38시간 공부법'이라고 있어요. 격일제로 했잖아요. 이틀 48시간 중 38시간은 공부하고 10시간은 자는 거예요. 본과정 첫 번째 과제인 libft도 빠르게 깨고 싶어서 2~3일 밤 새워서 제출했어요.
이런 장점을 타고난 게 운이 좋았다고 생각해요. 피신 때는 다른 사람들이 부러워할 때 ‘다들 이렇게 시간을 갈아 넣으면 될 텐데 왜 안 하지'라고 생각했어요. 지금 와서 보면 밤을 새울 수 있다는 것도 재능인 것 같아요. 관심 없는 분야에서 밤새라고 하면, 밤새는 건커녕 2시간 공부하는 것도 몸서리치고 힘들어할 거거든요. 그런 걸 보면 개발 분야가 잘 맞는 것도 운이 좋죠. 시대를 잘 타고났다고도 생각해요. 100년 전에 태어났으면 이쪽 분야에 흥미가 있다는 사실도 몰랐을 테니까요.
개발 시작하기 이전에는 이것저것 해보고 싶은 것들 하면서 살았어요. 다른 걸 길게 쭉 해보거나 그런 적은 없어요. 돈이 부족하면 아르바이트해서 또 하고 싶은 걸 하고... 제일 돈을 많이 써본 건 방탈출인 것 같아요. 150번 정도 다녔어요. 횟수 체크를 한 건 별다른 이유는 아니고, 실력 척도를 볼 때 가장 심플한 게 방 수라서예요. 테마별로 방별로 문제와 인테리어를 평가하고 기록 남기기도 해요.
프로그래밍 언어를 처음 사용해본 건 올해 1월 1일이에요. 새롭게 시작해보자는 의미에서 새해 첫날에 시작했죠. 그때쯤 42서울을 알게 됐어요. 타이밍이 좋은 것 같아요. 지금은 ZeroOneAI에서 인턴십을 하고 있어요. Go로 만든 ‘한밤의 늑대인간' 프로젝트를 멘토링 받는 자리에 따라간 게 운 좋게 인턴십의 기회로 이어졌어요. 잘하진 못해도 빨리 습득할 수 있다고 어필해서 뽑아주신 것 같아요. 대표님도 ‘새로운 기술이 나왔을 때 빨리 습득할 수 있는 사람'을 좋아하셔서 언제나 인재 지원이 열려있는 회사라고 생각해요.
회사에서 주로 사용하는 언어는 Go예요. 프로그램을 클라우드에서 돌릴 수 있도록 코드나 데이터를 등록하는 과정을 편하게 만드는 일을 해요. 구글의 Colab이나 Kaggle과 비슷해요. Go의 장점은 병렬성 처리가 쉽다는 점이에요. 다른 언어는 쓰레드 처리하려면 신경 써줘야 할 것이 많은데, Go에서는 go 키워드만 붙이면 돼요. 고루틴(gorutine)이라는 경량 쓰레드를 만들죠. 쿠버네티스가 Go로 돌아가서 클라우드 분야에서 쿠버네티스를 관리하기도 좋아요. 그 밖에도 매력은 많지만 Go로 취업하기는 쉽지 않은 것 같아요. 우리나라는 채용 자리도 웹 분야가 많고 사람들의 관심도 대부분 웹 쪽이니까요. 그래도 언젠가는 Go가 뜰 거라고 생각하고 있어요.
당장은 42과제를 못하고 있지만, 앞으로 계속 병행할 생각이에요. 인턴에서 정규직으로 전환된다고 하더라도요. 42서울은 비전공자 입장에서 봤을 때는 네트워크 지식을 얻을 수 있고, 리눅스 자체에 대한 이해도를 높여주기도 해서 병행하면 괜찮을 것 같아요. 물론 저는 죽어 나가겠지만 장점이 시간을 갈아내는 거니까(웃음). 또 좋은 게 회사가 지금은 원격 반, 출근 반 이런 식으로 하고 있는데요. 대표님께서 먼저 42서울 클러스터에서 원격 근무하라고 말씀해 주셔서, 클러스터로 출근해도 될 것 같아요.
yechoi
jwon