TGTGInsightintelligence telegramLIVE / telegram public index
← Experimental chill
Experimental chill avatar

TGINSIGHT POST

Post #198

@experimentalchill

Experimental chill

Visualizzazioni11,000Numero di visualizzazioni
Pubblicato16 ott16/10/2022, 16:39
Contenuto del post

Contenuto

Тут недавно стукнуло как я 5 лет устроился на первую работу и я, конечно, был безумно рад, что восьмая (десятая? шестая?) часть моей карьеры прошла. Учитывая, как это было порой темно, но все же я больше находил позитивных моментов. Удалось поработать с огромными движками вычислений в больших компаниях, удалось помочь стартапной тусовке. Удалось коммитить в open source и много помочь core вещам как компиляторам, стандартным библиотекам, компрессорам, индексаторам и тд. Удалось проявить какие-то свои таланты, найти область, в которой не так много людей и монетизировать и себя, и получить много счастья одновременно. Интересно, что даже за 5 лет мир меняется сильно. Скажем * Я убил много времени на С++. К сожалению, индустрия меняется в сторону, что любой проезд по памяти стоит дороже, чем перформанс, и кажется переезд на Rust-подобное нельзя избежать. Вот сижу учу Rust, сложно, бесит, что сильно надо мышление менять, чтобы писать хороший код на Rust. Самое противное, что рядом нет того, кто бы меня дергал и рассказывал, что так неправильно. С плюсами было так, что я попал в кучку профессионалов и со временем стал понимать многие кишки C++. С Rust придет только с опытом. Ещё добавляет тот факт, что мир меняется, а есть текущая реальность, в которой надо много часов писать на С++. В итоге получается, что свободное время убиваешь на то, чтобы подтянуться к индустрии. Например, не было постов на этой неделе, потому что я писал libgav1 на Rust, и я ужасно замучился. Rust мне не заходит из-за того, что он слишком много берет на себя, но индустрия решает свои проблемы, я просто боюсь обесценивания своих скилов, скорее всего :) * Я не могу сказать, что сделал какие-то продукты, которые сильно видны людям. Мне это скорее нравится, быть таким behind the scenes, но самое плохое, что приходит с опытом это ожидания и ответственность. Да, меня спокойно наймут на позиции перформанса и инфраструктуры, и я себе подписал небольшой приговор? Мол, от человека уровня меня ждут сильных результатов -- кроме инфры таких сильных результатов я не покажу. Кажется все ок? Страшно остановиться здесь, упустить время для развития. Плюс не так много времени есть помимо работы, сейчас я в той позиции когда едва хватает на жизнь и подучить Rust. * Вещи за 5 лет стали лучше. Лучше диагностика ошибок, лучше интерфейсы ядра, быстрее библиотеки, я стал меньше раздражаться неработающим вещам, все потихоньку становится менее плохим (highly opinionated): * Мы пробили 1M QPS чтения диска, и SSD стали намного более массовыми * Мы наконец-то имеем серьезный и инженерный алгоритм сжатия ZSTD * Мы поняли как не проезжать по памяти -- Rust * Мы научились быстрым CRDT * Мы на скейле стали делать лучше алгоритмы и кажется стало виднеться плато вычислений процессоров и памяти * Мы научились делать серьезный и бесконечно развивающийся SIMD типа SVE * Очень много кто переходит с x86 на Arm, а дальше скорее и RISCV * Мы сильно продвинулись в тестировании баз данных, транзакций и тд. * Сеть все ещё растет и предела пока нет :) * Мы научились намного лучше делать Profile Guided Optimizations, Post Link optimizations. * Мы показали, что JIT очень важен до сих пор (см. Rosetta) * Все таки нашли применение AVX512 * Лучше аллокаторы, поняли как huge pages влияют на разнообразный продакшн (см. TCMalloc) * Принесли серьезные системные языки в браузеры (WebAssembly) * Начали сильно пробивать игры под Linux So far мне нравится. Я буду дальше следить, что мне хочется делать, но за 5 лет я лишь чуть чуть приоткрыл сундук с магией под названием Systems Engineering. Дальше -- больше, куда мы денемся, прогресс не остановить, и все мы к нему причастны, куда ни посмотри, везде можно принести пользу