블로그

한국 IT 용어 이야기 (5) - "회고", "부검"

Agile 방법론을 제대로 배우기 이전부터 개인이나 팀이 했던 일들을 돌아 보는 일들을 했었고, 아주 오랫동안 두리뭉실하게 'review' 라고 불러 왔었다. monthly review, quarterly review, OKR rating / planning 등.. 리뷰에 관련한 건 다음 토픽으로 남겨 두기로 하고, 이 글에서는 구체적인 '돌아봄'에 해당하는 두 단어에 대한 이야기들...retrospect / 회고Agile - Sprint 에서 주로 쓴다고 하지만, 이전 Google에서의 (좋았던) 경험으로는 1) 큰 과제가 정신없이 달려와서 런치를 했을 때 축하 파티 하기 직전에 2) 과제가 뭔가 삐걱거리면서 지내왔을 때 재정비하는 의미로 잠깐 쉬어가는 타이밍에 했었던 것들이 있다.매번 다른 역할이었지만, 관리자의 입장일 때 다음 일감들을 계획하며 나아가기에 유용한 정보들이 모이기도 했었고, 반대의 입장일 때는 억지로 불편한 걸 이야기해야 하는 상황이 생길 때 오히려 불편했던 경험들이 있다. What went well 과 what could be better 의 용어에 익숙해져 있어서 해당하는 기록을 남겨 왔었고, 확실히 대면일 때 효과가 컸던 기억들이다.Agile 이 지배하는 한국 업계로 들어오며 '회고'라고 불리는 것을 알게 되었다. 참고로 회고의 영어 번역은 아래와 같이 여럿이다. retrospect 가 명사도 되니 retrospection 은 처음 보는 단어이고, remembrance, reminiscence 가 조금 더 익숙했다.미국에서 무의식적으로 "retro meeting" 이라고 하면 대충 알아 들었더랬지만, 한국에서 자칫 "retro" 라고 끊어졌다가는 '복고'로 읽히는 애매한 상황이 되었었고, 처음에는 '회고'가 '퇴고'로 들리던 시기도 꽤 있었다.제한된 경험으로 한국에서 접한 Agile 방법 하에서 회고는 1) 2주마다 매 sprint 를 치르며 2) 의무적으로 회고를 하고 3) 모두가 발언을 하기를 기대하며 4) 꽤 길고 감정 소모가 심했던 기억이다. 그래서인지 scrum 이나 sprint 를 잘 운영하는 사람에 따라 편차가 심했던 거 같고, 생각해 보면 미국에서는 짧은 영어가 오히려 감정 소모를 덜 시키지 않았을까 하는 개인적인 생각도 있다.postmortem / (사후) 부검Google 에서 일하면서 당연하게 몇 번의 사고를 내게 되었고, 그 때마다 postmortem 에 초대되었다. (https://sre.google/workbook/postmortem-culture/) 내가 만든 코드 혹은 실수로 초대되기도 하고, 남이 낸 사고에 당사자로 불려서 보호 코드를 만드는 이슈를 할당 받기도 하는 등.. 주로 SRE 들이 호출하게 되었고, 물론 그닥 유쾌한 기억은 아니다. ( 그 중 하나는 지금 나무위키에 박제되어 있기도... )lesson 을 모아서 다음에 같은 사고가 생기지 않게 하자는 의미였고, 여기서 생성되는 이슈들은 상대적으로 꽤 중요하게 처리되고 있었고 특히 '운용' 단계의 과제들은 더욱 그러했다. 이 문서에 여러 번 불린다고 해서 성과에 불이익이 있다거나 편견이 생긴다거나 했던 건 아니었다는 확신이긴 하지만, postmortem 이 무서운 단어인 건 변함이 없다.한국에서도 여러 사건 사고들이 생기고, SRE 가 없더라도 기록을 남기자는 같은 취지에서 postmortem을 쓰는데, 이게 한국말에서는 조금 더 무서운 번역이 된다.물론 4. 가 정확하다 하겠다. 죽을 사(死)가 아닌 일 사(事)이겠지만, 한자 표기 없이 '사후 검토'라고 불리기 보다는 '부검'으로 많이들 불렀고, 별 고민 없이 '사후 부검', 혹은 '사후 검토'라고 했을 때 죽을 사(死)가 먼저 어른어른 거린다.한국 정서에서는 (아마도 원래 취지와는 다르게) 시말서, 경위서에 가까워서 조금 더 불편하고, action item 들에 대한 강제력이 회사 규모 따라 달라서 어려웠던 기억들이다. 운영 위주의 팀들에게는 분명 도움 되겠지만, 해야 할 일로 기도하자 버티자 등이 나오는 상황도 어쩔 수 없이 생겼던 기억이고, 테크 이외의 조직들이 엮이게 되면 난이도도 많이 올라간다.최근에 여러 뉴스들에서 좀 더 보이던데, 사고들과 사투를 벌이는, 본인의 의지와 관련이 없더라도 연관이 되신 분들의 무운을 빈다.

교양한글용어영어

한국 IT 용어 이야기 (번외) - "인공지능"

최근, 특히 ChatGPT 이후 격변의 시기에 영어로도 한글로도 어마어마한 신조어들이 나오게 되면서 헷갈리게 되었다. 이전에는 리뷰 받은 후 발표되는 논문들과 official posting 이 source of truth 였다고 한다면 요즘에는 리뷰받지 않은 일방적인 주장 위주의 논문들, 각종 신문, 유튜버, communicator 들이 정신 없는 이야기들 속에서 가끔씩 잠깐만? 싶은 일들이 있곤 한다. 최근에 한 학기 AI literacy 관련 강의를 위해 정리하던 내용들... 2024년에는 또 어떤 신조어들이 생겨날 것인지... 쏙쏙 들어오는(?) 번역들Artificial Intelligence : 인공지능 . 가끔씩은 스피커 대화 서비스 or 챗봇 서비스를 나타내기도..Neural Network : 신경망Reinforcement Learning : 강화학습Gen AI , Generative AI : 생성형 인공지능오래 전부터 쓰였던, 여러 사람들을 통해서 쓰이고 있는 단어들. 상대적으로 귀에 잘 들어 옴. 최선을 다했다 싶은 번역들 ( 그냥 영어로 써도... ? )Convolutional neural networks : 합성곱 신경망Recurrent neural network : 순환 신경망regression : 회귀time series : 시계열Machine learning : 기계 학습Deep learning : 심층 학습Training / Inference : 훈련 / 추론RLHF : 인간 피드백 강화 학습Federated learning : 연합 학습(?) 이제 번역이 어색해 지기 시작함...영어 그대로 쓰자TransformerAttentionFine tuning / retrainigLanguage model / Large language model / small language modelLarge multimodal modelFrontier AI 앞으로 나올 수많은 개념들... 어지간하면 원어 기준으로 받아 들여 보자.. 고유명사 혹은 일반 명사들OpenAI / GPT4 / ChatGPT / 챗GPTGemini / Llama / midjourney / langchainCohere / Adhere / ...PyTorch / Tensorflow / ...Prompt / agent /약자들 : RAG / MoE / BERT ... 뭐가 회사 이름이고, 뭐가 제품 이름인지 이제 헷갈리기 시작... 타사 제품과 서비스와 헷갈리지 않을 수 있으면 좋겠고, 제발 일반명사는 쓰지 말고 귀찮더라도 풀어 설명해 주시길.... --a 불편한 신조어들초거대 AI : 한국형 마케팅 중심의 용어로 추정. "초", "거대" 둘 다 불편함. AI != LM 의 시각에서 알맞은 영어 번역도 떠오르지 않고, 어딘가에서 말하는 hyperscale 은 이미 data center 용 computing 을 나타내는 말로 적절한 영어 번역이 아님.생성형 모델 : 언어 모델을 이용한 생성 서비스 ? bonus - Very초거대 라는 단어를 들으면서 무의식적으로 'very는 아니겠지?' 라는 생각을 했었다. 오래 전 컴퓨터 구조 시간에 배웠던 몇몇 단어들이 생각났는데, '설마 very는 아니겠지?' 라며 들여다 보면 여지 없이 very 였어서 뭔가 작명에 게으른 선배 기술자님들을 떠올렸더랬다.VLSI : Very Large Scale Integration ( 초고밀도 집적 회로 )VLIW architecture : Very Long Instruction Word architectureVHDL : VHSIC Hardware Description Language : Very High Speed Integrated Circuit Hardware Description Language 

교양용어한글영어

한국 IT 용어 이야기 (8) - "팀"

아마도 어릴 때 프로 스포츠들로 팀을 접해서 은연중에 아래와 같은 고정 관념들이 있어 왔다. 1) 적으면 5명, 대개 9명, 많으면 후보 포함 25명, 2) 공통의 목표가 있고, 경쟁을 해서 이겨야 할 상대방이 있음.... 3) 비슷한 규모의 다른 팀이 언제나 있음. 이후 대학교에 들어가서야 팀 프로젝트 같은 걸 접하게 되었고, 다른 단어 고민 없이 여러 가지 문맥에 상관 없이 팀이라는 단어를 접해 왔었다. 아래는 사회 생활을 하면서 접하게 된 "팀"에 대한 몇가지 이야기들..팀장과 팀원사회 생활을 하며 팀장이라는 직함을 쉽게 접하게 되었는데, 삼성전자의 경우 상무이사급 임원이 팀장으로 200명을 거느리고 있는 경우가 있었고, 자그마한 회사에서 1인 팀의 팀장이라 불리는 사람이 있기도, 혹은 3-4명 조별과제 정도 크기의 일들이 있었더랬다. 이 경우 팀장의 역할이라는 것도 스펙트럼이 넓었고, 인사권을 총괄하는 의미부터 간단한 POC 까지 다양했다. scope는 매번 눈치껏 알아서 챙겨야 했지만, 팀장의 호출 하에 한 자리에 모일 정도 되면 하나의 팀원으로 생각하는 정도...?대화 상대로서 ### 팀장이라는 사람을 만났을 때 어디까지를 기대해야 할까 ? 반대쪽의 입장에서 기대하는 정도에 따라서 난이도가 있었던 기억이고, 종종 '팀장이라는 당신 말고 책임자와 이야기하고 싶다' 라는 생각을 했던 기억이다.미국에서의 팀생각보다 광범위하게 쓰여서 다른 의미로 눈치가 필요했었다. 식당에 가면 종업원들이 팀 혹은 crew 로 불리우고 only team member allowed from here 등으로 뭐랄까 그룹지어질 수 있는 모든 규모를 다 팀으로 부르고 있었던 거 같다.회사에서 팀이 커지거나 해서 여러 계층이 필요하게 되었을 때 매번 이름을 짓는 것도 일인데, 행정적 편의로 누구누구네 팀을 그냥 불러서 쓰곤 했었다. Rajan's team, Jen's folks, Michael's guys 등등.. report line 을 통째로 들고 생각하는 모습이라 관리하는 측면에서 많은 이득이 있었다.조직도가 다른 사람들을 차출의 형식으로 모아 일하게 될 때 코드 네임 등을 유용하게 썼던 기억이다. 이전에 구글 플레이스토어 한국/일본 과제를 할 때 미국에서 일하는 한국어/일본어 능력자들을 차출한 후 "dragonball" 이라는 한일관계에 나름 중립적인 팀 이름으로 모인 적도 있었고, 그 이전에 한동안 Calypso 라는 이름으로 50명 정도의 팀이 알려진 적도 있었더랬다. 만나는 거의 모든 사람들과의 대화에 "What is Calypso?" 로 시작했어야 하지만, 나쁘지 않았고, 당시 이름이 과제의 주제와 꽤 잘 맞아서 많이들 좋아했던 기억이다. 검색, 유튜브 등과 같이 거대한 게 되지 않는다면 영원한 것은 없고, 결과적으로 과제 별로는 2-3년 정도가 적당한 life cycle 이었던 거 같다.목적 조직/기능 조직, squad, chapter, task force한국에 다시 조인하고 나서 가장 어색하게 적응했던 것이 목적 조직, squad, chapter, 등의 유사 팀의 운용에 대한 내용이다. 10년 넘게 구글에서 speed & flexibility 에서 전혀 손해를 보았다는 생각이 없는 상태여서 개인차가 물론 있을 것인데, 한국에서 대다수의 회사들이 agile, velocity 등의 명분으로 squad, chapter, silo 등의 이름으로 팀들을 다양하게 나누어 정의하고 운용하고 있음에 많이 어색해 한다.개인적인 선입견이 강하게 있다. 먼저, spotify 에서 시도했지만 실패로 기록이 남았다고 하는데, 그에 비해 너나 할 거 없이 쓰고 있는 게 이해가 잘 안 된다. 그리고 스쿼드의 형태로 운용되려면 아래 3가지 정도는 챙겨 져야 한다는 생각이다. 1) 해체를 포함한 기간을 담보한 직원들 rotation 보장, 2) 모든 직군 별 commitment level ( up to 100% ) 3) 최소한의 코드 quaitly ... 더 깊은 이야기는 케바케일 거 같으니 여기서는 이 정도만 ...당장 치루어야 할 과제를 하기 위해 어쩔 수 없이 시작했다가 여러 이유로 계속 눌러 붙어 있으면서 부작용들이 진행되는 모습들이고, 그게 특히 스타트업씬에서는 더 적나라하게 나타나는 것으로 이해한다. 코드의 경우 쓰는 사람들만 있고 지우는 사람들이 없는 모습과도 닿아 있고, 한두명이 번아웃이 났을 때 위험에 더 드러나게 되는 모습이 되기도 한다. 회사들마다 사정이 다르겠지만, 꼰대스러운 한 마디의 잔소리만 하자면, 스쿼드든 챕터든 나 말고 상대방을, 동료를 한 번 더 생각하고 거드는 모습이 더 있고, 그걸 매니지먼트에서 존중하면 조금 더 낫지 않을까 하는 생각이다.Lead, head of ###구글에 다녔을 때도 한국에서는 상대적으로 작은 규모의 팀이다 보니 중소기업에 다녔을 때처럼 명함의 직함이 조금 뻥튀기 되어 있기도 했다. 구글 내에서는 그래도 자기 직함을 쓰는 건 매니저 승인이 필요했지만, 아무래도 링크드인 출범 이후에 (살짝 과장된) 직함들이 감투로서 쓰이곤 하는 거 같다. 규모가 작은 회사일 수록 Chief , Lead , Head 등이 아무래도 자주 보이는데, 면접 과정이거나 실제 업무를 같이 해 보기 전에 판단을 해야 하는 입장에서는 난이도가 꽤 높다. 뭐 거짓말을 악의적으로 하려고까지는 아니라 생각해도...게다가 최근에 보았던 사례들은 감투를 주면 바로 퇴사를 감행하고, 그들의 이력서는 ### Lead 로 update 되어 있었다. 타사와 협상을 잘 이뤄냈다고 긍정적으로 볼 수도 있겠으나, 새로운 감투를 달았으면 그 감투를 달고 몇 명의 사람들과 어떤 일을 이루어 냈는지 등이 궁금하고 반대로는 자랑하고 싶어야 할텐데, 서로 속고 속이는 세상이 되고 있는 거 같아 조금 씁쓸하고 불안(?)하기도 하다.

교양용어한글영어

한국 IT 용어 이야기 (7) - "매니저"

이번 글에서는 너무나 두리뭉실하게 쓰이고 있는 각종 매니저에 대해 이야기해 보려 한다. 일단 오랜 기억부터한국에서 매니저와 미국에서 매니저내 기억의 가장 오래된 매니저는 나무위키의 순서와 일치한다. 연예인 혹은 운동 선수의 일들을 도와 주는.. 연예인 쪽에서 유병재, 정준하 씨, 그리고 영화에서의 제리 맥과이어 등. 코미디의 소재로 접하기 시작해서 잘못된 선입견을 가지게 되었고 은연중에 '하대'를 기본으로 생각하는 직군으로 생각하고 있었다.(미국에서) 취직을 하니 나에게 매니저가 생겼고, 나도 매니저가 되면서 교육을 받았는데, 이는 한편으로 많이 달랐더랬다. 이른바 '생사여탈권'을 쥐고 있고, 그 사유가 'performance'일 경우 외국인 노동자인 나에게 추방까지 영향을 줄 수 있는 사람이 매니저라는 것이었고, 한국에서 알고 있던 경험과 정반대의 컨셉이었기에 꽤 충격이 컸었다. 그래도 한동안 직급/직책에 explict 하게 manager 라고 주어지지는 않았고, manager/reportee 의 상하관계가 맺어졌었고, 직군에 나타나는 매니저(들)은 또 다른 이야기라 하겠다.직군으로서 다양한 매니저들구글 내에서 다양한 직군으로서 매니저들을 만났다. 가장 가까이에서부터 만났던 것부터는Engineering ManagerProduct Manager / Associate Product ManagerTechnical Program ManagerAccount Manager / Technical Account ManagerGeneral Manager생각해 보니 밖에서도 property manager, facility manager, restaurant manager 등의 직함들을 만날 수 있었던 거 같다.그리고 한국에 와서 알게 된 project manager, CX manager 같은 더 많은 매니저들. 모 회사는 직급 파괴의 수단으로 모두에게 매니저를 붙여 주기도 한다고 들었고, 무의식적으로 받아 들일 때는 쉬웠는데, 촘촘히 생각해 보면 일이 커진다 싶다. (개인적인) 깨달음과 정리들매니저가 뭘 하는 사람인가에 대한 질문에 원래대로 한 발 돌아가서 개인적으로는 아래와 같은 잠정적인 정리이다.직함과 상관 없이 manager/reportee 의 관계의 경우- reportee 들을 이용해서 팀 전체의 성과를 높이고- reportee 들의 행복을 바라면서 자랑도 대신 해 주고- 평가 시기를 제외하고는 동원할 수 있는 최대한으로 일을 잘 할 수 있게 하고- 그래서 팀의 운영의 credit 을 manager가 가지고 가고- 평가 시기에 가장 바쁘고 힘이 있도록...직함에 있는 'manager'는- manager를 제외한 나머지가 어떻게된 "잘" 되게 하는 게 역할-- product manager 는 product 이 잘 되어야 하고-- account manager 는 account 가 더 흥해야 하고... 등...- 고충 처리반의 느낌에 가깝고, 대상의 행복, 성과 or feedback 이 주요 평가 지표- '하대'까지는 아니라도 갑을 관계가 있다면 '을'에 가까움.- engineering manager 의 경우 engineer 들의 고충을 이해하고 처리해 주는 게 주 업무... --a회사에서 상하관계를 맺어 주는 것에 대한 업권 전체에 대한 여러 고민들이 섞이기에 쉬운 문제는 아니라 하겠고, 직함이 세분화되는 것 자체도 주는 질서가 있기에 나의 정리는 하나의 의견으로 각자의 고민이 있다면 조금 정리하는 용도로 쓰이면 한다.직군으로서는 아래의 것들이 가장 헷갈린다... Product manager vs Program manager vs Project manager ( vs Product owner ) 아주 작은 startup 의 경우 혹은 직군 파괴의 회사의 경우는 어떻게 해야 할까... 이 책이 가이드라인은 줄 수 있지 싶다..ps. 한국 IT 용어 이야기 연재(?)는 (8) '팀'으로 일단 마무리하려 합니다. 읽어 주셔서 감사합니다...

교양한글용어영어

한국 IT 용어 이야기 (1) – 고도화

미국과 한국에서 개발자와 매니져 생활을 25년 넘게 하게 되었는데, 최근에 한국의 일선에서 여러 가지 단어들을 새로이 접했는데, 그 내용들에 대해 가볍게 적어 보려 한다. 커리어의 앞의 절반은 유튜브가 없던 시절에 책을 통해 한국에서 배워 왔던 것이었고, 뒤의 절반은 미국 회사에서 배워 왔던 것이었으며, 최근 2년간 한국에서 현업에서 접했던 것들에 대한 이야기이다.---으뜸은 누가 뭐래도 "고도화"이다. 직군을 가리지 않고, 거의 모든 사람들이 언젠가부터 쓰고 있는 표현이었다. 15년 전에 전혀 쓰지 않았던 단어이기도 하고, 한국 생활로 돌아올 때 적응에 가장 어려움을 느낀 단어이다. 정부 보고서나 신문 기사들도 쓰고 있어서 나만 모르는 단어인 줄..'고도'라고 쓰지 않고 꼭 '고도화'까지 붙여서 쓰이고 있으며, ~'화' 의 한자식 표현이 개인적으로 어색해 하고 있는 정도이다. 문서나 신문 기사에도 종종 보이지만, 주로 발표할 때 혹은 계획을 잡을 때 '뭐라 구체적으로 설명하기엔 애매하지만 여하튼 개선하려고 하는 모든 계획들' 정도의 의미이고, 가끔씩 구체적으로 사안들을 적어 주면 좋을텐데 등의 아쉬움이 있는 정도이다.네이버 사전에는 '정도가 높아짐'의 뜻이지만, gemini 가 알려주기로 영어 표현으로 improve, advanced, develop, upgrade, refine, perfect, master, polish 등이 있다고 하는데, 거꾸로 저 용어들을 한글로 번역해 놓는다고 생각하면 각각의 단어를 생각해 내는 대신 이제 '고도화'가 가장 적절한 단어일 거라는 생각이 든다.Bard 의 "고도화"의 영어 번역개발을 하면서 다른 사람들이 쓴 문서들을 접하게 될 때, 특히 design document가 개선되는 제안을 담고 있는 문서들에서는 polish 라는 단어가 쓰여진 문서가 고급져 보인다는 생각을 했었다. improve는 너무 무난하고, advanced, refine 은 어색하며, upgrade는 너무 영어가 짧아 보인다는 생각을 했었을까..? 어느 순간부터 내가 쓴 문서들은 저런 추상적인 단어들 보다는 아예 직접적인 설명들을 정확하게 적으려 했던 기억들이다.---생각나는 단어들은 일단 아래와 같다. 각각 다 여러 가지 의미로 충격이 있었던 단어들이라 몇 개 적어 보려 한다.고도화 , 아래나ㄹ, 티켓 쳐내기, 역량, 성장, 엠비피, 실험, 오케알, 케피아이, 팀, TFT, 파운데이션, 스쿼드, AARRR, UT, TC, 프레임워크, 이미지 말기, 굽기, 레거시

교양용어개발자한국어

한국 IT 용어 이야기 (6) - 리뷰

한글로도 영어로도 아주 많이 쓰이고, 다른 단어들과 붙어서도 많이 쓰인다. 언뜻 생각나는 것만으로도 코드 리뷰, 프로젝트 리뷰, UI 리뷰, 리걸 리뷰, 피어 리뷰 등등이 생각나고, 가볍게 '시간 나면 봐 달라' 부터 '승인해 달라' 까지의 스펙트럼이 넓어서 영어로도 어려웠고, 한국에 와서는 Agile의 파도 아래에서 쓰임이 참으로 어려웠던 단어이다.곰곰히 생각해 보면 조금 더 한국말로 검토 혹은 승인, 결재 등도 있겠지만, 역시 딱딱해 지는 것은 어쩔 수 없겠다. 결과적으로는 what's next를 잘 정의해 놓아야 불필요한 오해들이 줄어들겠고, 아래는 몇가지 사례들과 개인적인 견해들.code review구글에서 code review 를 처음 배웠는데, (거의) 모든 코드가 아무에게나 보이고, 어지간하면 build & run 이 가능하고, change 를 보낼 수 있으며, repository owner 가 혹은 해당 reviewer 가 24시간 내에 응답이 오는 꽤 신기한 경험들이었다.언어 별 approver도 따로 있어서 readability 를 챙겨야 했고, owner 가 안된다고 하면 여러 가지 방법을 동원해서 어떻게든 되는 방법을 찾는 등 "LGTM"을 받기 위한 모든 노력이 여기 들어간다고 하겠다. 마침표, 약어 등의 영어로 흠이 잡혀 고생하던 경험, 그리고 그걸 이용해서 owner의 기분을 풀어주는 고급 기술, 대상 팀의 TODO 를 풀어주는 조건으로 code 를 짜 넣는 방법, 높은 사람들의 stamp 를 받아서 강제적으로 되게 하는 등의 여러 기억들이 지나간다.이 맥락에서는 '리뷰'라는 말을 떼어 놓고 생각해 본 적은 없고, 한글로도 딱히 번역될 만한 말이 없는 거 같기도 하다. 당시 구글의 코드는 지금의 용어들로는 극단적인 mono-repo, 잘게 잘려진 changes, approve based 강한 정책, 리뷰어로 되어 있었을 때의 강한 의무 등 바깥에 와 보니 굳이 저렇게까지 싶을 정도의 정책들이었지만, 개인적으로는 혹독한 process가 주었던 장점들을 좋아한다.document review팀을 옮겨 다니는 짬이 되면서 가장 신경이 많이 쓰이는 부분이 자연스럽게 문서들의 review에 대한 것들이겠다. 제품의 거대한 그림을 보여 주는 PRD , master design doc 같은 formal 한 문서들부터 작은 기능 별로 만들어진 약식 문서들, 실험 리포트들, one pager라고 불리는 짧은 design proposal 들까지... '운영'으로 갈 수록 필요가 많은 일들이긴 하겠다. 실제로 서른 넘어 배운 영어도 여기서 많이 늘었음은 틀림 없으리라.앞의 code change 의 경우, 남의 repository에 요청할 때 제일 먼저 듣는 이야기가 'design doc이 있느냐?' 였고, 대개 이 질문은 너의 아이디어를 sponsor / support 해 주는 높은 누군가가 있느냐 라는 질문이라 하겠다. Google Doc 에서 review , approve 기능이 은근히 유용했던 기억이고, 몇몇 팀에서는 아예 comment를 resolve 하는 것과 explicit 한 approve를 받아 오는 것을 review 과정의 일부로 놓기도 했고, 그 때문에 comment 를 남기는 행위와 허락 없이 resolve 하는 행위가 조금 적대적인 행위로 받아들여지는 부작용들도 있었다.approve stamp 를 찍어 주었으면 하는 높은 사람은 대개 다른 거 하느라 바쁘고, 문서 리뷰를 요청한 사람은 또 반대로 급하기에 begging 의 기술이 필요하기도 했고, 이 날을 위해서 평소에 잘 지내 놓거나 visibility를 높여 놓거나 하는 게 필요했다. 대면 출장의 용도도 여기서 가장 컸던 거 같다. 지나고 보니 그래도 제일 좋은 방법은 review 의 결과가 미치는 영향에 따라서 요청할 때 1) 그냥 한 번 봐 달라 혹은 2) 네 생각에는 A/B/C 중 어떤 게 나은 거 같니 3) 네가 approve 찍어 주면 고맙겠다. 며칠이면 되겠니? 등의 기대치를 아예 dry 하게 요청하는 것이었던 거같다. 역지사지...launch review구글에 다니면서 가장 짜릿하고 좋았던 경험들은 이 launch review 들에 있다. launchcal 이라 불렸고, 훗날 ariane 라 불리는 과제의 gatekeeping , explicit approval 에 해당하는 process 이고, 혹자는 agile , fast iteration 의 정반대에 있다고 해서 불편해 하는 시각이 있었던 과정이다. 다른 과제들을 읽음으로서 얻게 되는 장점도 훌륭하게 많았고, 매주 area leadership 들이 이를 운용하는 모습은 교과서에 닿아 있고, Google 의 respect others 에 가장 가까운 점이기도 하다.여기서는 모든 리뷰의 목표가 'appove' 에 있고, 어떻게 하면 approve 를 받을 수 있는가 에 대한 방법, timeline 등이 잘 정의되어 있었다. speed를 고려해서는 approve 를 optional 혹은 TBR 등으로 해 놓는 정도도 나쁘지 않았고, legal 을 제외한 나머지는 자기가 맡은 부분만 신경쓰는 것도 좋은 경험이었다. 예를 들면 검색팀의 경우 engineering 과 quality 가 담당자가 달랐어서 engineering 은 성능과 기계의 비용 등에 대한 점만 보고, quality는 사용자 실험 지표 등만 보고, 둘 다 UI 에 대해서는 맘에 안 들어도 내버려 둔다든지...개인적으로 agile / squad process 를 별로 좋아하지 않는데, 그 중 가장 큰 부분이 review 과정 자체를 생략하며 speed를 얻으려 하는 습관들 때문이다. 사람이 많고 여러 직군이 같이 하게 될 때 효용이 더 크겠지만, 테크 쪽은 어떻게든 그래도 코드가 들어가기 전에 비슷한 과정을 겪게 될테니까 부작용이 덜한데, 적어도 같은 직군의 다른 팀원들에게 도움 받는다는 생각으로 리뷰를 요청하는 건 규모와 상관없이 했으면 하는 생각이다. 여러 이유로 일단 내가 이걸 봐 달라고 하면 딴지부터 걸겠지..? 라는 선입견도 영향이 있을 수 있겠고, 서로 다른 squad 사이의 알력 같은 것도 쉽게 예상되긴 한다. 한국의 작은 회사들에 도입하려 했을 때 직접적인 피드백들은 불필요한 과정 추가로 인한 delay 우려 였고, 아이러니하지만, 나는 정 반대의 생각이고, 구글에서 event driven launch 들이 있었을 때 launch process가 가장 도움이 되었었던 사례들이 있다.아래는 추억 돋는 quality review.Search Quality Meeting: Spelling for Long Queries (Annotated)Quality 에 진심인 사람들의 치열한 리뷰 현장. Table 에는 stakeholder들, 병풍처럼 대기하는 과제 진행자들... 차례대로 기다리는...

교양한글영어용어

한국 IT 용어 이야기 (3) - "R&R"

여러 직군의 사람들과 일을 하게 되었을 때, 애자일/스프린트/회고/리뷰 등으로 이런 저런 일들을 진행하게 될 때 듣게 되었던 단어 중에 생소한 것으로 "R&R"이 있었다. 스쳐 지나듯 오갔던 말이어서 한글로 "알앤아ㄹ" 혹은 "아래날" 정도로 들려서 꽤 오랫동안 'arena' 를 이야기하는 줄 알고 있었다. 'arena' 는 발음으로는 '어리나'에 가깝지만, 한국에서는 '아레나' 라고 듣고 자라 왔었기에 한데 모여 전투적으로 열심히 일하자는 이야기겠구나 생각했었는데, 사실은 정반대의 의미를 가진 단어였던 셈이었다.참고로 구글, 바드, 웹스터 등에 R&R 을 물어보면 Rest & Recreation 을 알려 주는데https://www.merriam-webster.com/dictionary/R%20%26%20R여기에 한글로 '뜻'이라 물어 한국어를 섞어 주면 IT 용어들로 쏠려서 결과들이 몰려 온다. 관련업에 종사하긴 하지만, 한국어 컨텐츠가 쏠려 있는 거 같아 조금 씁슬해 진 부분도 있겠다.https://www.google.com/search?q=R%26R+%EB%9C%BB알앤알 뒤에 붙는 단어들로는 '정리하다', '구분하다'가 많이 오고, 비슷한 문맥에 '업무분장'이라는 이름의 단어도 종종 등장한다. 업무분장은 job assignment , task assignment 등에 더 가깝다 하겠다.몇몇 기억들주로 여럿이 모여 일을 같이 하면서 혹은 나누어 하게 될 때 '선을 긋는' 용도로 자주 쓰였던 기억이다. 팀간에 혹은 멤버들 간에 가벼운 텐션이 있게 될 경우 나는 여기까지만 할 거고 그쪽에서 나머지는 알아서 하라 정도의 거리 두기 용으로 ...프로젝트 단위 보다는 조직도 같이 큰 그림에서 이해하기에 괜찮은 개념들이긴 하지만, 뭔가 훨씬 더 규모가 큰 곳들 - 영업망 업권 할당 같은 - 에서 쓰이는 게 좋은 개념이 과하게 스타트업씬에 내려와 있는 게 아닐까 싶었다. 특히 'responsibility' 부분은 과제에 적용시키기 어렵다는 생각인데, 실제로 '책임을 진다'는 게 어떤 의미인가에 대해 딱 떨어지는 그림이 나오진 않았고, 이는 내가 각종 툴의 "assigned" 상태에 익숙해져 있는 bias 가 있다 하겠다.아이러니하게 구글에 다니면서는 한 번도 써 보지 않은 단어였고, 그래서인지 개인적으로 개발 조직 내에서는 적어도 선을 그으면 안 된다는 생각이다. 잘 풀릴때는 뭐 별 문제 없지만, 왠지 과제가 삐걱거릴 때 무의식적으로 선을 긋는 습관이 여기서 온 거 같다는 생각이고, 몇몇 경우 개인들과 조직의 성장을 막는 요소로 작용하고 있지 않았나 하는 생각이다. 예를 들면 '나는 프론트엔드 엔지니어니까 백앤드는 고치면 안돼' 같은..선을 긋고 기본 자세가 방어적인 데서 시작을 하는 팀들과 복잡한 일을 해 나갈 때, 자연스레 비는 부분에 대해 책임 소재가 불분명해져서 종종 어려운 일들이 생겼다. 사람 수가 일감의 수보다 부족한 거의 모든 스타트업 씬에서는 특히 자주 일어나는 일인데, 새로운 영역의 일이거나 몇몇 팀들의 사이에서 겹치거나 비거나 하는 경우 자발적으로 알아서 챙겨 지면 좋으련만.. 이걸 잘 나누어서 일이 되게 잘 시키는(?) 것도 PM 이나 리더십의 R&R 이라 생각할 수도 있겠다.

교양용어개발자한국어

한국 IT 용어 이야기 (2) - 정합성

두번째로 챌린징했던 단어는 '정합성'이다. PM / design 쪽에서 이야기는 많이 듣지 못했지만, data 직군과 DBA , DevOps 들과 이야기할 때 종종 나왔던 단어이다.일단 네이버 사전에서 정합성은 무슨 말인지 못 알아들을 정도의 설명인데, 단지 뒤에 '체크'라는 말이 붙으면서 조금 알아들을 수 있는 용어로 바뀌게 된다.네이버 사전 결과 '정합성'30년 전에 데이터베이스 과목을 수강한 후에 실무 일머리들은 영어로 다시 다 배웠기에 여러 가지 용어들을 두리뭉실하게 써 왔는데, 여기서 잠깐 ChatGPT 와 bard 의 이야기 먼저...ChatGPT 의 결과 - "데이터 정합성을 영어로"bard 의 결과 - "데이터 정합성을 영어로"일단 책에서 배운 개념으로 data consistency 와 data integrity 가 꼬이기 시작했고, 한글로 적당한 '데이터 무결성'이 생각이 났다. 이를 비교하려 다시 물어 보니 이제 bard 랑 chatGPT 가 비슷한 말을 하게 되는 거 같았다.ChatGPT - 데이터 무결성과 데이터 정합성 비교bard - 데이터 무결성과 데이터 정합성 비교아래는 배웠던 대로 이해하고 동작하는 (쉬운) 예제들.database migration 작업을 하는데, 새로 생성된 테이블의 entry 개수가 이전 table 의 개수와 다르다.. --> 두 테이블의 정합성이 맞지 않아 AWS DMS 를 다시 시도한다든지...database , table 안에 끊어진 reference 들이 있고, deprecated 된 table 때문에 의미 없는 필드들이 더 생기게 되었다. --> data 무결성이 깨지는 상황으로 batch 잡을 돌려서 null 로 채우자.. 조금 난이도가 있는 사례로는소스로 삼는 raw table 이 여러 곳에서 동시에 사용되는 derived table 을 만들게 되는데, 같은 날 생성된 다른 두 테이블의 같아야 할 값이 다르더라. --> 두 테이블 사이에 필드들이 정합성이 다르다. freezing 되어 있는 테이블을 써라.. 그런데, 위의 bard 의 번역처럼 다양한 의미를 두리뭉실하게 '정합성'이라는 말에 기대어 쓰는 경우들이 종종 있었다. 뭔가 딱히 깊이 설명하고 싶지 않지만, 보이는 데이터를 바로 쓰기 찜찜할 때 '정합성' 이 거론되었고, 사실 이 단어 뒤에 들어오게 될 동사를 고르는 것도 꽤 어려운 일이다. '맞지 않다' , '깨져 있다', '좋다 or 나쁘다'. '완벽하다', '쓸만하다?'가장 어려웠던 사례로는Google Analytics 가 주는 MAU, Firebase 가 주는 MAU , Amplitude 가 주는 MAU 가 다른데, 데이터 정합성이 의심되니 쓰던 걸 쓰도록 하겠다. or vice versa실험을 돌려 지표가 나왔는데, 정합성에 이슈가 있어서 다시 하기로 했다. 이 '정합성'이라는 말은 '무결성'에 비해 조금 과하게 넓게 쓰이고 있는 게 아닐까 하는 생각이었고, 이 일본식 한자들은 딱히 정이 가지 않기도 해서 어느 새 지나 보니 시간 될 때마다 영어 표기를 권하는 꼰대가 되어 있었다.

교양용어개발자한국어

한국 IT 용어 이야기 (4) - 깎다/쳐내다/굽다

개인적으로 영어가 잘 준비되지 않은 상태로 외국계 회사에서 서바이벌 모드로 일을 배웠던 내용들 중에서, 그럴 듯하게 한글로 번역되어 쓰이고 있는 경험들이 있었기에 가벼운 마음으로 모아 본다. 특히 동사 부분이 조금 더 두리뭉실했던 기억인데, 영어로는 make, build 면 어지간하면 다 되는 게 굳이 한글로 번역되면 의미가 다양해져서 그랬겠다 싶다.표준어 사전 같은 게 있는 게 아니기도 하고, 나 말고 다들 잘 쓰고 있는 모르는 걸 배워 가는 나름의 즐거움이 있기도 했었는데, 이게 한글 영어 차이인지 세대 차이인지 등을 살짝 헷갈리긴 했었다. (요구사항을) 깎다sharpening requirement 에 가깝다 하겠다. 주로 non-tech 분들이 ticket / issue 를 만들어서 tech 쪽에서 가져가 해결해 주기를 기다리며 이것저것 자세히 풀어 주는 행동이 여기에 해당하겠는데, 결과물을 나타내는 '깎아진' 이라는 표현은 한글로도 영어로도 잘 들어보진 못했다. 열심히 하는 과정을 나타내는 추상적인 단어였으리라..sharpening 의 뜻 중에 칼을 간다는 느낌은 좀 과하고, 연필을 깎아서 준비한다 정도가 적당하니 좋은 번역이라 싶었다. 실제로 잘 다듬어진 product spec 이나 product requirement document 등이 과제에 끼치는 영향이 크기에 좋은 기억들이 남아 있다. (티켓 or 이슈를) 쳐내다JIRA 와 같은 이슈 트래커 툴들과 일하는 방식에 따라 ticket 이라 부르기도, issue 라 부르기도 하는데( 구글에서는 한동안 buganizer-id 혹은 bug id 라고만 불렀던 기억이다. 지금은 issue tracker 라고 본 거 같은데.. ). 이것을 resolved / done / closed 상태로 만들어 내는 것을 쳐낸다고 많이들 불렀다. 아마도 개인 혹은 팀의 TODO list 에서 쫓아내는 개념이라 생각하면 이해가 한번에 된다. 그리고 이게 입에 붙을 때 꽤 찰진 느낌이 나서 좋았던 기억이다. 주로 일을 시키는 입장에서 '그거 쳐내면 좋잖아요..?', 'Good. 잘 쳐 내셨어요.' 등... 한글의 격음이 주는 자그마한 쾌감 같은 것들이 있었다.  (이미지를) 굽다/말다docker / k8s / container 등이 널리 쓰이면서 deploy / rollout / launch 등의 단어들과 함께 구워서 내보낸다 라는 의미로 꽤 들었던 기억이다. 분명히 이건 CD-ROM 을 굽는 burn 에서 왔을 것이고, 영어로는 그냥 무심하게 build an image 로 쓰이고 있을테니 시대를 살짝 역행하는 느낌의 간극이 있다 하겠다. 비슷한 context에서 '말다' 도 들어 본 기억인데, 이것저것 섞어서 이미지 만들 때 상황을 나타냈었던 기억인데, 워낙 '굽다'가 강해서 굽는 것을 보조해 주는 역할 정도라서 기억이 강하게 남지 않고 있는 거 같다. 김밥을 말다에서 왔다는 설과 밥을 국에 말다에서 왔다는 설 둘 다 설득력이 있다.. 

교양한글영어용어

채널톡 아이콘