Faang의 선임 엔지니어링에 대한 진실 – 당신이 기대하는 것이 아닙니다.
마침내 시선을 사로 잡는 보상 패키지와 권위있는 로고가있는 그 제안서를 마침내 얻었을 때, 나는 그것을 만든 것처럼 느꼈습니다. 서비스 회사에서 일한 후 프로세스가 비교적 간단하고 기대가 분명한 중간 계층 기술 회사에서 일한 후, 나는 약속의 토지 : Faang Company의 선임 엔지니어링 역할로 향하고있었습니다.
최첨단 기술, 훌륭한 동료 및 수십억 달러가 사용하는 제품에 대한 작업이 내 머리에 춤을 추는 비전. 나는 무료 미식가 점심에 대한 깊은 기술 토론을 상상하고 세상을 변화시킬 복잡한 엔지니어링 문제를 해결했습니다.
5 년이 지난 후에도 여전히 여기에 있지만 내 경험은 예상과는 다릅니다. 반드시 더 나쁘지는 않지만 여러 가지면에서 더 나은 것은 아니지만, 내가 상상했던 것은 아닙니다. 누군가 나에게 시작하기 전에 실제 직업의 “하루”비디오를 보여 주었다면, 그들이 나에게 잘못된 역할을 전적으로 보여주고 있다고 생각했을 것입니다.
기술 대기업에서 선임 역할로가는 길에 있다면, 내가 시작하기 전에 누군가가 나에게 말한 내용이 있습니다.
현실 점검
내부 도구는 복잡합니다
나의 첫 번째 도전은 온 보딩 중에왔다. 내부 툴링 환경은 광대하고 정교하며 수십 개의 맞춤형 시스템이 배울 수있었습니다.
생산 데이터에 대해 쿼리를 실행하거나 간단한 구성 변경을 원하십니까? 이를 위해서는 종종 여러 시스템, 승인 프로세스 및 때로는 다른 시간대의 팀과의 조정을 탐색해야합니다.
기억에 남는 하루, 나는 팀이 소유 한 서비스에 대한 권한 워크 플로우를 통해 몇 시간을 보냈습니다. 이 과정은 보안과 책임을 위해 설계된이 과정이 철저했지만 새로운 사람을위한 학습 곡선입니다.
기억에 남는 하루, 나는 팀이 소유 한 서비스에 대한 로그를 볼 수있는 권한을 얻기 위해 4 시간을 보냈습니다. 승인 워크 플로는 재귀 기능을 질투하게 만드는 순환 참조를 통해 저를 보냈습니다.
물론, 문서가 있습니다. 수천 페이지의 페이지가 구식입니다. 나는 처음 3 개월 동안 약어를 배우고 (우리는 마지막 카운트까지 347 개의 내부 TLA를 가지고 있음) Wiki가 내가 작업중인 시스템에 대한 정확한 정보를 얻는 것을 알아내는 데 보냈습니다. 우리의 내부 도구는 1995 년에 설계된 것처럼 보였지만 대중을위한 매끄럽고 직관적 인 제품을 건설하는 아이러니는 나에게 손실되지 않았습니다.
코딩은 쉬운 부분입니다
내가 가입했을 때, 나는 대부분의 시간을 도전적인 기술적 문제에 대처할 것으로 예상했다. 실제로, 나는 코드를 작성하는 시간의 약 20%를 소비합니다. 나머지? 회의. 선적 서류 비치. 리뷰. 계획. 정치.
선임 엔지니어로서, 귀하의 값은 귀하가 작성하는 코드의 양으로 측정되지 않습니다. 다른 사람을 얼마나 많이 활성화하고 조직을 탐색하여 작업을 수행 할 수 있습니다. 나는 자신을 코드 제작자로서 강력한 승수로 빠르게 전환해야했다.
숨겨진 계층
종이에 Faang 회사는 간단한 엔지니어링 수준의 비교적 평평한 계층 구조를 가지고 있습니다. 실제로, 비공식 전력 구조의 복잡한 웹이 있습니다.
초기부터 그곳에 있었던 엔지니어들이 있습니다. 그들은 커리어 사다리에서 당신과 같은 수준에 있을지 모르지만 그들의 의견은 디자인 리뷰에서 무게의 10 배를 차지합니다. 전략적 프로젝트에서 일하는 “높은 가시성”팀이 있으며, “유지 보수”팀은 중요한 인프라를 실행하지만 인식이 줄어 듭니다.
선임 엔지니어 타이틀은 팀과 조직에 따라 크게 다른 것을 의미 할 수 있다는 것을 빨리 알게됩니다. 소비자 제품 팀의 선임 엔지니어는 클라우드 인프라 또는 ML 시스템의 하나와 근본적으로 다른 과제를 해결하고있을 수 있습니다.
실제로 중요한 것
혁신에 대한 지표
나는 건축 우아함과 혁신적인 솔루션의 꿈을 꾸었습니다. 나는 우리의 모 놀리 식 추천 엔진을 확장 가능하고 유지 관리 가능한 것으로 대체 할 아름다운 마이크로 서비스 아키텍처가 매핑되었습니다. 나는 GraphQL과 이벤트 소싱을 복음화 할 준비가되었습니다. 나는 우리의 기술 스택을 현대화하는 데 피치를 연습했습니다.
그런 다음 현실이 맞았습니다. 회사가 실제로 관심을 갖는 것은 비즈니스 바늘을 움직이는 지표입니다.
일관된 해싱 및 확률 적 데이터 구조를 사용하여 영리한 알고리즘으로 5ms 감소? 건축 검토위원회는 이메일을 확인하면서 정중하게 고개를 끄덕였다. 간단한 CSS 변경으로 클릭률이 0.1% 증가하여 녹색 대신 버튼을 파란색으로 만들었습니까? 매일 업데이트를 요구하는 책상 주위에 리더십이 갑자기 숨어있었습니다.
우리가 가장 유명한 최근 “혁신”중 하나는 문자 그대로 페이지에서 20 픽셀 더 높은 버튼을 이동하는 것이 었습니다. 추가 분기 별 수익에서 1 억 4 천만 달러를 주도했습니다. A/B를 테스트 한 엔지니어는 변경이 몇 달 동안 중요한 인프라를 리팩토링 한 사람들보다 더 빨리 촉진되었다고 테스트했습니다.
내가 관찰 한 가장 성공적인 엔지니어는 반드시 가장 화려한 것은 아닙니다. 그들은 리더십 (보통 Mau, 유지 및 수익)에 어떤 지표가 중요한지 이해하고 그들에게 끊임없이 집중하는 사람들입니다.
점진적인 승리의 예술
스타트 업에서 나는 거대한 지상 재 작성과 극적인 변화에 익숙했습니다. Faang에서 나는 점진적인 개선이 성공의 통화라는 것을 알게되었습니다.
크고 큰 변화는 위험하고 정치적으로 어렵습니다. 번성하는 엔지니어는 독립적으로 배송 할 수있는 일련의 작고 안전한 변화로 대규모 개선을 분해 할 수있는 사람들입니다. 덜 화려하지만 훨씬 더 효과적입니다.
스토리 텔링 트럼프 구현
이것은 아마도 나의 가장 큰 계시 일 것입니다. 당신의 작품에 대한 설득력있는 이야기를하는 당신의 능력은 종종 일 자체보다 더 중요합니다.
나는 그들의 기술 리드가 영향과 비즈니스 가치에 대한 이야기를 제작하는 데 능숙했기 때문에 평범한 프로젝트를 축하하는 것을 보았습니다. 반대로, 엔지니어가 왜 누구를 돌봐야하는지 설명 할 수 없었기 때문에 획기적인 기술적 업적이 무시되는 것을 보았습니다.
기술 작업을 비즈니스 영향 스토리로 번역하는 법을 배우는 것은 내가 개발 한 가장 중요한 기술이었습니다.
내가 어떻게 적응했는지 (그리고 당신도 할 수 있습니다)
리더십과의 관계를 구축하십시오
아마도 가장 반 직관적 인 교훈은 기술적 우수성만으로도 내가 가고 싶은 곳을 얻지 못할 것이라는 것을 깨닫는 것이 었습니다. 이전 회사에서 최고의 엔지니어가되는 것으로 충분했습니다. Faang에서 나는 진정으로 번성 한 엔지니어들이 회사 원칙을 구현하면서 리더십과 강한 관계를 구축 한 사람들이라는 것을 발견했습니다.
그렇다고해서 네가되는 사람이되거나 정치를 부정적인 방식으로하는 것은 아닙니다. 이는 이사와 주요 엔지니어가 다른 제약으로 다른 현실에서 작동한다는 것을 이해하는 것을 의미합니다. 데이터베이스 스키마 마이그레이션에 대해 걱정하는 동안 조직 우선 순위, 헤드 수익 전투 및 분기 별 비즈니스 리뷰를 저글링하고 있습니다.
나는 감독과 매월 커피를 예약하기 시작했고, 프로젝트에 대해 논의하지 않고 그녀의 도전을 이해하기 위해 매월 커피를 예약하기 시작했습니다. 나는 그녀의 분기 별 프레젠테이션을위한 기술 슬라이드를 만들기 위해 자원했다. 리더십이 새로운 이니셔티브를 발표했을 때, 나는 우리 팀의 작업을 광범위한 목표와 연결하고 회사 가치 측면에서이를 구성하기 위해 노력했습니다.
결과? 중요한 프로젝트에 소유자가 필요했을 때 제 이름이 나타났습니다. 재구성이 발생했을 때 (그리고 항상 발생) 우리 팀의 헌장이 확장되었습니다. 그리고 논란의 여지가있는 기술적 결정에 대한 지원이 필요했을 때, 나는 내 판단을 신뢰 한 리더십 수준의 동맹국을 가졌습니다.
자기 홍보에 나타나지 않고 리더십에 보이는 것은 예술 형식입니다. 핵심은 진정으로 당신의 기능을 보여주는 방식으로 가치를 더하는 것입니다. “발견”을 기다리지 마십시오 – 조직의 기술 계층을 모두 이해하는 사람으로서 자신을 적극적으로 자리 매김하십시오.
힘 곱셈에 중점을 둡니다
나는 가장 많은 코드를 쓰거나 가장 영리한 해결책을 제시하는 영웅이 되려고 노력하지 않았습니다. 대신, 나는 내 주변의 모든 사람들을 더 효과적으로 만드는 데 집중했습니다.
더 나은 문서화를 만들었습니다. 일반적인 작업을 자동화하는 도구를 구축했습니다. 나는 주니어 엔지니어를 멘토링하는 데 시간을 보냈습니다. 나는 우리의 프로세스에서 병목 현상을 식별하고 수정했습니다.
이러한 기여는 성과 지표에서 직접 나타나지 않지만 팀 전체를 더 나은 팀으로 만드는 사람으로 명성을 얻습니다.
정치적 자본을 구축하십시오
나는 관계 구축을 직장의 일부로 취급하기 시작했지만 산만 해지지 않았다. 나는 다른 팀의 엔지니어들과 정기적 인 커피 채팅을 예약했습니다. 나는 교차 기능 이니셔티브를 위해 자원했다. 다른 팀이 무엇을하고 있는지, 그리고 내 팀의 작업이 어떤 영향을 미쳤는지 이해했습니다.
프로젝트 나 디자인 결정에 대한 지원이 필요할 때 더 이상 낯선 사람들을 설득 할 필요가 없었습니다. 이미 관계를 맺은 사람들에게 다가 갈 수있었습니다.
아니오라고 말하는 법을 배우십시오 (전략적으로)
스타트 업에서 나는 모든 것에 대해 예라고 말했습니다. 이것이 자원으로 제한된 환경에서 살아남는 방법입니다. Faang에서, 모든 것에 대해 예라고 말하는 것은 번 아웃과 평범한 레시피입니다.
가시성, 영향 및 경력 목표 및 회사 우선 순위와의 조정에 따라 요청을 평가하는 법을 배웠습니다. “지금 당장 내 시간을 가장 잘 사용하는 것은 아니지만 여기에 내가 할 수있는 일이 있습니다 …”
이 선택적 접근 방식을 통해 실제로 중요한 작업에 집중할 수있었습니다.
틈새 시장을 찾으십시오
내가 아는 가장 존경받는 선임 엔지니어는 전문성을 가지고 있습니다. 그들은 일반적으로 모든 것에 능숙하지 않습니다. 그들은 “성능 전문가”또는 “신뢰성 전문가”또는 “스케일링 전문가”입니다.
나는 분산 시스템 관찰 가능성에 대한 전문 지식을 의도적으로 개발했습니다. 나는 우리 팀의 Prometheus와 OpenTelemetry 마법사가되었으며 실제로 의미가있는 맞춤형 Grafana 대시 보드를 구축했으며, 신호 대 잡음 비율을 향상시키면서 관측 가능성 비용을 72% 줄이는 추적 샘플링 시스템을 만들었습니다.
이 전문화는 내가 고급 시스템에 대한 아키텍처 리뷰에 들어갔고 생산에서 옆으로 갔을 때 사람이되었습니다. 내 호출기는 더 자주 사라질 지 모르지만 스프린트 백 로그의 최상위에있는 티켓이 아니라 진정으로 관심을 갖는 도전을 해결하고 있습니다.
예상치 못한 혜택
초기 문화 충격에도 불구하고, 나는 Faang에서 예상치 못한 삶에 대한 이점을 발견했습니다.
- 규모와 영향: 소규모 회사에서 일한 후, 우리가 구축하는 것의 넓은 범위는 마음에 드는 것입니다. 우리의 일이 매일 수백만 명의 사람들의 삶에 긍정적 인 영향을 미친다는 것을 아는 것은 매우 만족 스럽습니다.
- 학습 기회: 문제의 복잡성과 문제를 해결하는 데 사용할 수있는 자원은 타의 추종을 불허합니다.
- 커리어 캐피탈: 내 이력서의 브랜드 이름과 내가 만든 네트워크는 내 경력의 나머지 부분에 대한 문을 열 것입니다.
- 인간 충격 이야기: 아마도 대부분의 보상은 때때로 우리의 기술이 유행병 기간 동안 누군가가 연결을 유지하는 데 도움이되었거나 소기업이 생존 할 수있게하거나 전 세계의 반쯤 일상 생활을 조금 더 잘했는지가 있습니다.
그만한 가치가 있습니까?
5 년 만에 다시 같은 선택을할까요? 절대적으로 – 더 현실적인 기대와 함께.
이 일은 매일 2,000 줄의 완벽한 코드 라인을 커밋하는 코딩 영웅이거나 다음 혁명 시스템을 건축하는 고독한 천재가 아닙니다. 회사의 대규모 규모를 활용하여 충격을 유발하는 것입니다. 수억에서 사용하는 제품을 제공하기 위해 복잡성 (기술적, 조직 및 인간)을 탐색하는 것입니다.
Faang 회사에서 선임 역할을 고려하고 있다면 눈을 뜨고 들어가십시오. 도전은 당신이 기대하는 것과 다를 것입니다. 당신은 당신의 IDE보다 디자인 문서에서 더 많은 시간을 보낼 것입니다. 기업이 말하는 것처럼 들리더라도 회사 원칙에 능통해야합니다. Github 기여 그래프가 드문 모습을 보이는 성공의 새로운 정의를 배워야하지만 영향력은 어디에나 있습니다.
그러나 적응할 수 있다면 다른 곳에서는 개발할 수없는 기술을 얻을 수 있습니다. 귀하의 작업에 영향을 미치는 만족도는 수백만 명의 사용자가 실제입니다. 그리고 당신은 당신이 실제로 가지고있는 역할을하는 외교관, 부품 건축가, 부분 코치 등 당신이 상상했던 순전히 기술적 인 역할보다 더 흥미 롭다는 것을 알 수 있습니다.
저자는 Faang Company의 선임 소프트웨어 엔지니어로서 분산 시스템 관찰 가능성을 전문으로합니다. 그들은 5 년 전 서비스 회사와 중간 계층 기술 회사에서 일한 후 Faang에 합류하여 기술 거인의 복잡성을 다루기 전에 구조화 된 환경에 대한 경험을 얻었습니다.
Post Comment