@ksnchk А кто знает каким будет ии? Пока все цитируют маркетинговый бред самих производителей но замена программистов, обещанную 2 года назад, так и не случилась. И даже они их все ещё нанимают 😄
@nerdniwe В теории да. На практике хэшмапа может убить кэш процессора и оказаться медленнее тупо линейного массива который уложился в кэш. Поэтому O(n) не надо воспринимать буквально. Железо чуть иначе работает
Уважаемые попищики, я отвалился из твитора потому что ложился спать в 4 ночи последние пол года, чтобы доделать наш первый распределенный облачный продукт)
Прошел ровно год и 4 дня с регистрации компании (оформились 🇺🇸 4 июля 2025го 🦅).
Мы начинаем публичный запуск!
Компания называется BuildFetch, мы делаем инфраструктурый облачный/on-premise SaaS.
Первый продукт BuildFetch Cache — очень быстрый, распределенный remote cache для Gradle и Bazel
- Позволяет билдам сохранять и переиспользовать результаты билд tasks/actions в общий быстрый кеш
- Когда CI, AI агенты, разработчики делают билд свеже-подтянутого кода он пролетает за секунды вместо минут тк кто-то (ваш CI или ваш тиммейт) уже потратил кучу времени и ресурсов чтобы его сбилдить
- Cache hit ratio в реальных проектах ~90%, в компаниях где я настраивал такие решения хороший remote cache снижал стоимость и длительность CI ~ в таких же порядках, без шуток, это сотни тысяч долларов на средней монорепе в год для бигтеха с ~100 разработчиками на проект.
Продуктово мы даем:
- BuildFetch Cloud с централизованным юзер экспириенсом, биллингом через Stripe и выбором региона для проекта: US West, EU Central, скоро US East, EU West и тп
- Для больших компаний естественно умеем вставать на Managed K8S у любых облачных хостеров с тераформом или K8S на железе и биллинг по инвойсам
- Реалтаймовая аналитика с точностью до байта
- Неограниченное количество "seats/users" в проектах
- На Cache Pro неограниченное количество проектов
- Все ресурсы можно перерасходовать post-paid выше тарифа без отказа сервиса
- Сейчас поддерживаем Gradle и Bazel, в ближайшее время добавим Go Build Cache, Turborepo Remote Cache, Generic CI cache и тд
Технически:
- Всё как мы любим, low-latency, high-throughput, bus-bar networking, high-availability всех компонентов, HAProxy, HTTP/3, в каждом кластере набор селфхостед HA бд на быстрых дисках, io_uring и бекапами
- Файлы храним распределенно и многоуровнево в памяти, на физических NVMe + сетевых SSD, S3-like солюшены у хостеров не используем тк они сильно медленнее
- Encryption in Transit & At Rest, mTLS интерконнект между кластерами
- Leader -> Many Followers топология, продакшн в трёх регионах у двух хостеров
- Все подсистемы k8s native без завязки на сервисы конкретных облачных провайдеров
- Верификация целостности (SHA-256) у файлов на каждый GET запрос, бекапы в независимые регионы
- Огромный набор юнит, интеграционных и end-to-end функциональных тестов где все микросервисы Leader и Follower поднимается в k3d, проходит реальный флоу через внешний API от регистрации, до запросов от Gradle/Bazel прямо в тесте и проверки состояний сохраненных файлов и метаинформации в разных базах
Компания (C Corp) зарегистрирована в США (Вайоминг), сам я фаундер & CEO тоже живу в США по гринкарте EB-1A Extraordinary Abilities в Колорадо, скоро подаемся на SOC2 комплайенс.
В штатах я с 2017, два раза получал O-1 визу, последние 10 лет занимался только инфраструктурой и архитектурой в Infra командах в бигтехе Lyft, Juno, Yandex, NY Times и тд можете на линкедине или ютюбе меня найти (Artem Zinnatullin) и делал кучу инфраструктурного и фреймворкного оупен сорса для k8s, сети, различного тулинга, компиляторов, билд систем.
Сам монорепо BuildFetch собирается естественно с самим собой в виде ремоут кеша уже полгода с примерно ~6ms p50 GET processing latency до первого байта в респонс, ~93% cache hit ratio за 30 дней
Билдкеш несомненно можно поднять-написать, мониторить-обслуживать самому, поэтому наш прайсинг и уровень сервиса делает это невыгодным для 9/10 бизнесов :)
Вот!
---
Нервничаю, что уж скрывать, но не из-за технической стороны проекта, а скорее потому что бутстрап: хостинг, команда, юристы и прочее улетает за трехзначные доллары моих денег, а жить в США и планировать семью без бигтеховой зарплаты недешево)
Буду писать как у нас что технически и продуктово развивается, как идёт бизнес, BuildFetch Cache и следующие продукты BuildFetch — одним из них будет BuildFetch Artifacts :)
К слову, в конце этого года-начале-следующего запускаю второй стартап, его я чисто своими деньгами дальше прототипа не подниму, поэтому после прототипа там уже будут серьезные VC деньги и миллионные расходы, ~20 человек в команде в США и EU, stay tuned особенно Rust разработчики пишите в личку в чём специализируетесь, знакомьтесь, я начинаю собирать пул кандидатов 😽
@SwedPaul@proftwist Во многих странах понятие центр жизненных интересов. Хоть не живи там, если признают что это твой центр жизненных интересов - ты резидент
@alenkoy Вдруг будет открытем для кого-то, но при расчете в приложениях надо не текущий вес, а желаемый указывать. Из-за этого можно быть в профиците ибо 20кг жира это не 20кг мышц по потреблению калорий
@ziddle_zaddle Явно показать свою ценность. В корпорате люди тоже не в одиночку делают приложение. Но можно же сказать "был проект разработки приложения. Я делала и сделал то, то и то." И люди сразу понимают вашу ценность и опыт. Что вам можно дать уже завтра как рабочую задачу
@ziddle_zaddle Работу получает тот кто покажет свою ценность. Лид сделал бы также. Вот наймет он вас - чем вы будете полезны и заниматься завтра? Когда говорите "мы" то не ясно может вы купили стояли, а "пацаны" работали. Поэтому телепатов нет, никто не видит в чем ваша ценность. Помогите им
В процессе написания постов нашел великолепную статью с объяснением I/O механизмов в Linux, от традиционных до модного-молодежного io_uring. Всё по полочкам разложено.
Если вы Backend или SRE разработчик - рекомендую.
https://t.co/FFHOpVZooo
@champ_supern0va@mokevnin А лучше сходить к дерматологу который определит ваш фототип кожи и подскажет с какого уровня uv вам надо мазаться. Аро фототипы можно в инете почитать. Кратко: единственные кому не надо избегать солнца - чернокожие
Мысли вслух про технологии и подходы к разработке
Представьте себе самого плохого менеджера. Как бы он выглядел и что бы он делал? Наверное, в первую очередь концентрировался бы не на результате и том, что делает его команда, а на процессах, постоянно внедрял бы скрамы, дейлики и все новые процессы.
Представили? Звучит ужасно, да?
Но вот если заменить менеджера на разработчика, а подходы к работе — способом организовывать код, то картинка начинает играть новыми красками.
Мы в мире разработки существуем, потому что бизнес не может, в отличие от нас, писать код, и да, мы поэтому уникальны.
Но мы почему-то в этом процессе совершенно забыли о том, что у кода всегда есть цель, и она самое важное.
Мы не совсем понимаем, кто нас нанимает и для чего, зато можем писать код, обсуждать код и делать его лучше.
Мы организовали себе конференции, взрастили селебрити — тем самым огородились от реального мира.
И вот если посмотреть на себя, чем мы лучше плохого менеджера из примера в начале?
Только ситхи возводят все в абсолют, но мы с вами уже это сделали.
Да, разговоры про табы и пробелы ушли, но заменились тем, как верно передавать пропсы в компонент, как писать меньше кода для стейт-менеджера и какой фреймворк лучше.
Значит ли это, что развиваться в технологии не надо? Нет.
Просто нужно помнить, что наши фреймворки, решения, парадигмы написания кода — все это то же самое, что и фреймворки, парадигмы, походы к управлению работой. Применение их — не самоцель, развитие их — не самоцель.