엄청난 일들이 많았던 해였다. 이보다 다이나믹할 수 있을까? 시작부터 완전히 망했다.
과도한 업무의 스트레스를 운동으로 풀던 나는 적정 무게를 지키지 않았고, 무리에 무리를 더하며, 결국 1월 첫째 주에 디스크를 터뜨렸 다.
극복하는 과정은 더욱 힘들었다. 첫 두 달은 대부분의 시간을 누워서 보냈고, 앉아있지를 못해서 밥도 서서 먹었다.
와이프와 지인들이 도와줘서 몇 가지 해결책과 재활방안을 마련했고, 정선근 교수님의 모든 책과 영상을 보고 허리가 아프면 새벽에라도 공원을 걸었다. 그리고 회고를 하듯이 매일의 통증을 기록해 나갔다.
재활은 고통의 연속이었다. 누워있는 기간 동안 모든 근육은 잠겼고, 신경은 근육에 붙었고, 트라우마는 강해졌다. 통증의 원인이 재활인지, 디스크인지 구분할 수는 없었다.
하드웨어가 무너지니 소프트웨어에도 장애가 발생하기 시작했다. 평생 긍정적 살아온 내가 우울증이 오기 시작했다. 쥐 공원 실험을 알고 난 뒤부터 정신의 문제는 환경의 문제라고 생각하는 난, 주변의 모든 환경을 바꾸기로 결심하고 비즈니스 아키텍처보다 개인 아키텍처를 우선시하기로 했다. 시간과 건강이 돈보다 중요해졌기에 퇴사했다.
30대의 개인 아키텍처는 영어를 잘하는 개발자였고, 이는 점수로 증명할 수 있어야 했다. 대부분의 영미권 국가에서는 공학도에게 IELTS Academic Overall 6.5 점수를 요구했다. 인생에 한 번쯤은 영어를 언어학적인 접근으로 배워보고 싶기도 했지만, TOEIC, TEPS를 한 달 만에 원하는 점수를 취득했기에 이 시험도 무턱대고 도전하기 시작했다.
학생 때 영어 대신 수학 문제를 한 개 더 풀었기에, 어학에 많은 스트레스를 받을 것이 뻔했다. 그래서 일요일 오전에 모여서 각자 코딩하는 소모임에 나가기 시작했다. 만들고 싶었던 기술 스택으로 주차마다 웹페이지를 꾸며가며 정신적인 스트레스를 풀어나갔다. 국민취업지원금을 받기 위해 신청했던 토요일 정보관리기술사 강의도 오 롯이 나에게 집중할 수 있는 좋은 시간이었다. 몇몇 기술사 선생님들은 내가 원하던 나의 40~50대 모습 같아 목표가 생겼다.
한 달, 두 달 기약 없이 영어 공부만 하는 시간이 지나갔다. 월 소득이 기회비용으로 환산되니 포기할 수도 없었다. 재활과 어학을 병행하는 건 벅찼다. 하지만 석 달째가 되니 뭔가 보이기 시작했다. 넉 달째가 되니 시험을 볼 수 있겠다는 자신감이 생겼다. 취업지원금을 받기 위해 면접을 봤던 회사는 주말의 코딩과 수업으로 준비가 되어있었기 때문에 한 단계씩 올라갈 수 있었다.
12월에 들어와선 매일매일 1시간 이상 진행했던 운동으로 허리 재활이 거의 끝나가는 걸 기록했던 수치와 컨디션으로 느낄 수 있었다. 장시간 앉는 걸 견딜 수 있을 인프라가 갖추어지니 시험을 볼 수 있었다. 기다리는 시간은 힘들었다. 두 가지 모두 인생 2막을 설계하기 위한 중대한 발표였다. 한 달 더 공부하기에는 내 의지가 못 버틸 것 같았다.
결과는 원하는 대학원의 진학할 수 있는 최소 요구사항을 맞췄고, 어디 가서 영어를 꽤 한다고 말할 수 있는 숫자가 나왔다. 똑똑하고 매너 있게 느껴졌던 면접관들과 같이 일할 수 있는 기회도 주어졌다. 소모임에도 꾸준함이 전해졌는지 운영진이 되었다.
2024년은 막연했던 모든 목표에 실현 가능성이 생겼다. 기술사 자격증 하나 남았지만, 디스크도 극복했는데 1년이란 시간이 있다면 어떤 것이든 못할까 싶다.
한달동안 텝스한다고 삽질했던 것만 빼면 3개월간 아이엘츠를 공부하며 영어에만 몰두할 수 있었고, 정규반을 마친 뒤에는 영어 말하기,쓰기까지 커버가 되었다.
물론 아카데믹 스피킹, 라이팅을 잘 하는 건 추가로 1-2개월 더 해야하지만, 이제 이 지긋지긋한 영어라는 걸 프로그래밍언어를 공부하듯 어떻게 공부하는지 깨달아서 크게 문제가 되진 않을 것 같다.
모의고사에선 스피킹,라이팅 모두 6이 안정적으로 나왔고, 이제 기출을 돌릴 수 있다는 자신감이 생겼다.
어느정도 언어장벽이 사라지니 새로운 경험들도 할 수 있게 되었는데, devto나 hackernews 블로그 글들을 보면 이 사람이 아카데믹 라이팅을 한 사람인지, 고딩수준(내수준)인지 바로 보인다.
컨퍼런스에서 말하는것도 비슷하다, 몇몇은 두서없이 말하고, 사티아나델라같은 사람은 분명히 건너올 때 아이엘츠를 땄을 것 같다. 요즘엔 막연한 꿈이 feasible한 꿈이 되었기에, 두 페이지가 되는 지문을 봐도 그렇게 힘들지는 않다. 그리고 아무도 겪어보지 못한 페이즈로 접어들고 있는 국가에 대한 의존성을 분리할 수 있기에 가장으로서의 걱정도 사라졌다.
한편, 동기의 시간을 잠깐 뺏어 서로의 히스토리를 공유할 수 있었는데, 그의 가치관이 나와 비슷해서 너무 재밌었다. 나보다 똑똑한 사람이 나랑 똑같은 생각을 하고 있다는게 방향성을 잘 잡았다는 반증같아서 그랬다.
의료업계는 미국가면 4억부터 팔린다는 걸 듣고, 간호사분들이 왜 몇몇 있었는지, 간호사 증명하면 학원에서 할인을 해주는지 알 것 같았다.
면접도 걱정보단 잘 진행되어 최종 단계까지 오게되었다. 역시 인터뷰는 가벼운 마음으로 본 것들이 합격률이 좋다. 여기엔 일요일마다 3-4시간씩 코딩을 꾸준히 집중해서 했던 게 주효했다.
기술자는 주방장이 칼을 가는 것 마냥 계속 단련이 되어있어야하지만, 회사는 여러가지를 아울러 일하는 Problem solver 를 좋아한다, 그렇지만 회사가 좋아하는 인재가 되는거지, 시장에서의 상품가치는 점점 떨어진다. 다시 "내 코드가 상품성이 있어졌다" 라는 게 검증되었으니, 이제 회사에 대한 의존성을 분리하는 일만 남았다. 그 답은 PE가 되는 것이였고, 어떻게 공부하는지 알았기에 시간만 쏟으면 달성할 수 있는 목표가 되었다.
메모어 이전엔 달마다 회고를 했었다. 13기를 끝내니 주차단위 회고가 세부 계획을 미세조정하는데에 장점이 더 있었다.
개인 일에도 지라를 썼었는데, 생각보다 태스크 생성, 워크 로깅에 시간이 많이 들어간다, 금/토요일 사이, 일/월 사이로 루틴을 잡는게 집중이 분산되지 않아 좋았다.
최근엔 같은 MBTI인 분을 만나게되어 "님 제 성격이시면 업무적이 아닌 개인적으로도 회고하시죠?" 라고 했더니 "네 달마다해요" 라길래 그 분에게도 여기오면 재밌을거라고 추천했는데, 올 지는 잘 모르겠다.
리딩은 확실히 지난주보다 좋아졌다. 세 가지 그룹 문제를 머리 속에 넣고, 숨은그림찾기하듯 각각의 키워드를 매칭시킨 뒤 앞뒤 주변을 읽어 패러프레이징한 단어들을 걸러내는 스킬이 필요한데 점차 나아지는 것 같다.
정보처리기술사가 정보관리기술사로 바뀐 것도 모르고, 첫 수업을 들었는데 이건 CIO, CTO를 만들어주는 시험이란 생각이 들었다. 왜 회사에서 임원진으로 데려가는지 알 것 같았다.
융합IT의 전반적인 걸 공부하고. 이걸로 면접 대비도 할 수 있을 것 같다.
모든 토픽들에 대해 마인드맵을 만들고, 아이엘츠 라이팅/스피킹 공부하듯이 접근하면 언젠간 딸 수 있을 것 같다.
Problem
리스닝
캠브릿지10 MP3이 더이상 캠브릿지 사이트에서 제공되지 않아서 2만원을 날린 느낌이였다, 그냥 유튜브에 있는걸로 풀걸
캠브릿지10은 섹션3,4도 잘 들린다. 난이도가 시험보단 낮은거 같아 꾸준히 딕테이션과 쉐도잉을 하지만 효용성이 있을지 약간 의문스럽다. (아마 제너럴아이엘츠 수준인듯)
라이팅
알면 알수록 어렵다. 특히 부연설명을 위한 ,while V ,with O Ving 패턴은 이해는 되지만 어느 경 우에 써야하는지 아직 감은 잘 안온다.
Part1 다이어그램 해석 지문은 Part2 의 주제별 브랜스토밍 후 글짓기를 하는 것보단 희망적이다. 하지만 아직 손에 익지는 않아 패턴들을 조합하는 중.
스피킹
스피킹은 기존 직장인2분말하기 책을 학원가는 도중에 쉐도잉하는데, 효용성이 크게 없는 것 같다.
이것도 여러 문제 패턴들 중에서 정규화 된 답안을 내야하는데 그걸 연관되어 생각하는게 아직 힘들다. 예를들면 사람 -> 부모님 -> 사려깊은, 존경받는, 친구 -> 웃긴, 좋은 성격, 유명한사람 -> 개그맨 -> 웃긴, 모범이되는 이런 키워드들이 머리 속에 매핑이 되어있어야한다.
필러를 쓸 수 있는 시험도 아니고, 막힘 없이 말해야하기 때문에 내 경험을 말하면 안 되지만 자꾸 경험을 떠오르게 된다.
디스크 재활이 성공적으로 진행중인줄 알았는데 새로운 좌골 통증이 생겼다. 이런
Try
문맥상으로는 이해하지만 쉐도잉하면 못 기억하는 부/관사 때문이라도 일단은 꾸준히 해봐야할 것 같다. 하고 후회하는게 그 반대보단 낫겠지..
라이팅 숙제는 잘 따라가고 있지만 커리큘럼이 끝났을 때 실제 지문들을 도전할 수 있을지 좀 두렵다. 근데 계속 꾸준히 해야한다.
아이엘츠 아카데믹이 대학 입학을 할 수 있냐는 시험이니, 외노자가 되려면 대학생보단 영어를 잘해야지 않나 하는 마음에 하루에도 몇번씩 마음을 다잡는중..
C++보단 빠르게 마스터하겠지..
스피킹
이건 전략을 바꿔야할 것 같다. 기존 책에서 쌤의 베스트 답안을 다운받아서 들으면서 그 기준으로 계속 쉐도잉을 해야할 것 같다.
GPT와 대화하는 기능으로 아이엘츠 선생님 한명이 생겼는데 특정 주제의 질답을 하는 건 좋으나 여행영어 수준으로만 대화가 가능하다. 짜임새 있게, 정규화된 답변을 말하는건 스피킹 레벨을 한단계 올려야 가능하다. 하루종일 외국인 멘토가 붙어있는것도 아니니 일단 따라해야 체득이 되고 거기서 변화를 줘야할 것 같다.
주제에 대해 키워드 맵을 만들어 나가고 있다. 아직 Part1만 진행중이라 주말에 Part2, 3에 대해도 매핑을 해놓고 녹음->딕테->수정을 반복하며 좀 더 입에 붙는 패턴들을 써야할듯하다.
내 경험을 말하지 않는 연습을 어떻게 할 수 있을까? 예를들어 unusual meal 에 대해서 질문이 오면, 난 푸팟퐁커리가 생각나고 태국/게살/맛있음/비많이옴 하며 추억에 잠기면서 망해버린다.
푸팟퐁커리 대신 김치라면/동네/인기음식점/K전통음식/unusual 한거잖아 라면에 김치 넣는게/Heavy meal but affordable/ 라고 1분안에 떠올라야 좋은 점수를 받을 수 있을 것 같다.
주말 하루는 어깨만 대신 먹고, 많이 걷고 걸은만큼 쉬어줘야겠다. 80%정도 복구했다고 착각한듯. 여러모로 건강하지 못한 육체에 불안한 정신이 깃든 한 주
레퍼쳌 해드렸던 분이 원하시는 기업으로 잘 옮기셔서 저녁 접대를 받았는데, 오랫만에 새벽까지 술마시니 술 때 문에 발이 저린건지 운동 때문에 저린건지 생활 패턴때문에 저린건지 통증 디버깅이 안되었다. 30분 투자한 것치고 넘 호사를 누린것 같기도 했다. 내가 외노자가 될 때 +82로 레퍼런스 번호 달아놓겠다고 했는데 그 이후 얼마나 해드려야할지 감이 안온다 :웃으며눈물을흘리는_얼굴:
스피킹 수업시간에 짝지와 함께 질답을 하는 방식이 추가되었는데, 둘다 멘붕에 빠졌다. 아 그렇지~ 면서 하나씩 아이디어 추가하면서 질답하는데, 이게 맞는 방향인지 지금 생각해도 웃기다. 그래도 연습했던 문제들은 약간 편해졌다.
기술사 숙제는 전자정부표준프로세스 전체를 요약하는 등의 서술형인데, 영어 공부때문에 언제 할 수 있을지 모르겠다. 벌써 3주차가 밀려서 하루는 족히 써야할텐데..
Try
다시 금주하고 이번주는 몸 컨디션을 체크하기
멘붕에 빠질 시간이면 그냥 모범답안을 두 세번 따라 읽는걸로 전략을 바꿨다 녹음도 원테이크 말고 될때까지 5-10번 지금처럼 하고..
리스닝 2h 리딩 1h 스피킹 2h 라이팅 2h + 수업 이 루틴을 일일퀘스트마냥 유지하자.
7월, 정규반에 갔다가 2주 만에 내가 있을 곳이 아니다 라고 판단해서 환불하고, 베이직 문법 책 정리하고, 1분 말하기 책부터 다시 리팩토링하고, 기본반 인터넷 강의로 베이직 교제 다 끝내고, 중급반에 오니까 쌤이 뭐라고 말하는지 좀 들렸다.
첫 주는 호기롭게, 둘째 주는 멘붕하고, 셋째 주는 그냥 하라는거나 잘해보고, 넷째 주에 오니 어? 이게 되네 가 되었다.
영어 일기 밖에 안 써봤던 K인재인 내가 뭐가 되었던 엣세이를 쓰고 1분30초 동안 발표한다니 놀랐다. (아직은 5.5수준이지만..)
이 제 GPT가 뱉어내는 영어 산출에 오류들이 보이기 시작한다. 심지어 꽤 많다, 확률로 처리하기 때문인지 전반적인 시제 통일도 못 한다. 왜 통번역가분들이 아직은 GPT로 번역가를 대체할 수 없다라고 했는지도 알 것 같다.
IELTS 를 유튜브에 검색하면 대부분 1달완성이라고 나오는걸 보고, 과대광고인지도 모르고 그래 이번 기회에 영어 좀 제발 끝내자, 어차피 잘하는 사람들 물어보면 한 번은 빡세게 했던 때가 있다니까 라며 호기롭게 도전을 선언했는데 지금와서 다시 그 영상들을 보니 애들 혀가 다 꼬여있었다.
프로그래밍에 비유한다면 2주 완성 정보처리기사나, 초봉 5,000만원 3개월 완성 국비지원과정일 것 같다.
정규반에 오니 K인재들은 거의 없고, 예전처럼 대부분이 유학파다,
머리가 더 굳기 전에 방향 전환을 해서 다행이다싶었지만, 하루에도 몇 번씩 한숨은 나온다. 오히려 개발할 때보다 샷건(?)도 많이 치는 것 같다.
프로그래밍에 대한 경로만 최적화 되어있는 뇌를 학습시키는게 쉽지 않다.
바깥 양반에게 양해를 구하고, 휴대폰에 데일리 퀘스트랑 사전, 녹음기, 엑셀, 뱅킹 빼고 메신저를 포함하여 다른 모든 앱을 삭제했다,
난 지인들에게 매번 공중전화쓰던 시절이 삶에 느림과 기다림이 있었던 시절이라고 말하고 다녔는데, (요즘엔 낭만이 있던 시절로도 불리는 듯)
공부를 핑계로 그 시절로 잠시 돌아갈 수 있어서 좋다. Digital Immigrant 이기에 어쩔 수 없나보다.
People who like to categorize will call it a coder, developer, or engineer.
To strangers, it may seem like a job that pays a lot of money, or that you have to pay on demand,
To an employer, you're a mechanic.
What does this job mean to me?
At the point where your short-term memory turns into long-term memory, you suddenly have an idea that will solve everything and you grab the keyboard.
Throwing myself into a gradient descent and not getting out of my chair until I hear the birds in the morning.
You want to code so badly that you can't because you're required to take a liberal arts major.
These days, I tell stories like this.
I build houses on the internet.
Front-end? That's interior construction.
Backend? That's tooling and gutting.
DevOps? That's digging and rebarring.
Security? That's keeping unknowns out of the complex.
Programming is about borrowing concepts from the real world to automate what humans do, and I feel like it took me too long to realize this.
I finally understand why so many of my professors used to tell me that the more you know, the more important the basics are. I can see why so many of my professors used to say, "The more time you have, the more important the basics are.
My answer is no. There comes a point where the idea of the service is more important than the technology stack.
Even people who have never heard of Claude Shannon can create a service, and edge computing has made it possible to deploy that code.
You can't say, "If you go this way, it's going to fall apart at some point.
You can't pour gasoline on a burning house and then say, "I told you it would happen.
New things always cost money. You have to look at it from the perspective of staff skill and maintenance.
I think, This is not an academy, if you want to write something new, use your personal time and show me a prototype in a week, but there are also people who think, Who am I studying for?
So what was it that I didn't like, I don't even know if it was bad construction. You may not know.
But not being able to say it's bad construction is overloading my body.
To keep myself from stressing out, I'm going to keep a checklist of ideal features.
Do we have a code owner feature? Have we created a culture where certain code changes can be reviewed by a per-file owner?
What is the average number of comments in a code review?
What is the branching strategy?
Are unit tests run in the pipeline, and if so, what is the coverage?
Are integration tests based on real data executed in the pipeline, and if so, what are the criteria for inclusion in the integration tests?
Are E2E tests executed periodically, and if so, who is responsible for managing them?
Are cases given enough time to be implemented before going to test driven?
Do they perform chaos testing for external factors? Do they recognize the need for disaster recovery?
How is open source managed? Is the software versioned on a specific cycle?
Do developers manage their own Docker files and deployments, and if not, who does?
Is there support from the systems team to configure a private network? If not, is there an environment where a VPC can be configured?
What is being done mechanically to maintain the quality of the code, such as lint and static analysis?
If there is a failure, is the failure publicized and a failure report created?
Does everyone in the team have ownership of the service?
What is the SLA for the services you represent? What is the frequency of OOM failures or top 500 failures?
Is the SLA a standard for the HR department?
Is the direction of the owner visible to all members?
Are decisions made based on data? What tools are used to collect logs?
Is the logging format standardized with Open Telemetry, and if not, what format is being managed?
Collecting web metrics?
Is there a foundation for A/B testing to introduce features? If not, how is the HR department involved in planning?