Позовите Архитектора!
435 subscribers
199 photos
11 videos
76 links
Жизнь IT-архитектора на 360°: решения, риски, legacy, AI и люди внутри сложных систем. Как не делать лишнего и сохранять устойчивость.
Добро пожаловать в мои рабочие тапки.
Екатерина Костенко
Download Telegram
Когда я слышу вопрос, какой язык программирования выбрать... я вообще не понимаю, о чём речь.
Хочешь денег в айти - выбирай глубокое понимание процессов в проектируемой системе на всех уровнях.
Тренируйся выделяй ключевые требования в проблеме заказчика. Научись в тоннах доков найти ровно то, что требуется в данном случае. Детально изучай специфику компонентов, мелкий шрифт тоже. Учись видеть узкие места и будущие проблемы. Считай стоимость поддержки. Учись собирать оценивать требования. А ещё лучше - изучай расстановку и интересы стейкхолдеров на проекте.
Общайся с коллегами, слушай их внимательно, они радостно делятся проблемами - и это бесплатно! Лучше любого вебинара.
Найди наставника, если надо всё это быстро, прям сейчас, желательно вчера.
А язык какой-нибудь возьми, любой, какой?... монетку кинь, я не знаю. Или дайс... И научись писать на нём базовые алгоритмы.
Они тебе больше никогда не пригодятся (ну почти)
1🔥9👍4❤1
По поводу стоимости навыков разработчика, обнаружила зависимость.
Чем меньше пишешь кода - тем выше твоя ставка оплаты. Как месячная, так и почасовая. И доля в проекте.
Пока я строчила килотонны кода с удовольствием, вообще никто не платил)
Самые высокие ставки же получаются, когда одним неоспоримым аргументом отговариваешь бизнес от какой-нибудь безнадёжной затеи.
🔥9👍3❤2
Я вот пишу, мол, техника программирования никогда не пригодится...
Прорешай все задачи на leetcode, прочти "Искусство программирования" или что-то около.
А потом на реальном проекте все твои задачи - это перекладывание сообщений из кафки в БД.
Но, конечно, знать то, что зашито внутрь библиотеки, что и как работает под капотом у системы - дорогого стоит.
Это экономика ресурсов плюс умение предсказать проблемы плюс мгновенное понимание узких мест, а значит и фикс проблем из разряда "никто не понимает, почему у нас теряются сообщения". Или, например, почему мы заливаем систему ресурсами, а она работает всё медленнее?
Это похоже на использование калькулятора. Нужно уметь посчитать в столбик, чтобы понимать, как всё работает. Чтобы прикинуть быстро в уме. Или быстро найти ошибку. Или чтобы усовершенствовать расчёты.
Но в повседневных задачах ты просто забиваешь цифры в колоночку эксель.
Да, алгоритмы тебе никогда не пригодятся. Но они научат тебя понимать, как устроены инструменты. А при самом удачном стечении обстоятельств - научат думать и искать решение совершенно непонятных проблем.
❤3🔥1
Архитекторский кейс.
Стоит ли передавать файлы из БД в аналитическое хранилище в виде полей blob?

Есть книга, где автор утверждает, что хранить файлы в blob - это хорошая практика. Действительно, плюсы у такого решения есть.
Пусть файлы в нашем случае и хранятся в БД в поле типа blob.
А вот переливать в хранилище стоит ли их в таком виде?
Плюсы, минусы такого решения?
Я в большинстве случаев против хранения файлов в полях типа blob, если дело касается хранилищ.
Ниже - разбор для интересующихся.
Плюсы использования blob заметны для БД
- blob поле удаляется вместе с записью, что автоматом подчищается мусор.
Второе - меньше рисков нарушения целостности. Сюда же - проще делать бэкапы.
Но так ли это актуально для хранилища? В хранилище мы редко что-то удаляем. Если и удаляем, то это выполняется атомарными транзакциями. Обеспечение целостности данных лежит на etl-процессах.
А минусы велики:
- не всегда эффективная обработка движком больших объемов информации в blob полях;
- нужно глаз да глаз за тем, чтобы кто-то не написал запрос, который потянет тебе огромные ненужные блобы в рекордсет,
- при включении версионирования данных, опять же нужно внимательно смотреть, попадают ли туда блобы или нет, оправдано ли это,
- переливание из таблицы в таблицу, допустим при добавлении нового поля при непрерывной доставке, имеет шансы превратиться в ноев потоп для всей системы
и т.д.
Мы получаем головную боль на каждом шагу при обработке таблиц с блобами. Это дополнительная точка контроля, которая должна быть в поле зрения при любом дальнейшем решении.
К тому же, если есть требования к безопасности файлов, то тут добавляются риски. Нужно всё время считывать инфу из blob, прогонять через песочницы, антивирусы и прочие системы безопасности, а потом записывать назад.
Итого, в большинстве случаев, считаю, файлы лучше хранить в файловом хранилище, а использование blob в хранилищах данных жёстко ограничивать.
Это может неплохо сработать вначале, ускорить запуск. Но при развитии станет источником проблем.
👍2
Пришла в голову идея. Составить гайд по типичным решениями, которые разрабы закладывают, чтоб быстрее сбагрить систему с рук.
А при развитии эти решения становятся тормозом, тянут деньги, блокируют развитие.
Думаю, было бы круто. Но вот получится ли - надо осмотреться. Повыбираю кейсы из опыта.
И которые сама творила (и главное - почему). И которые разгребаю за другими.
❤7👍2
В прошлом году я много путешествовала по России. И до этого несколько лет ехала куда-нибудь при первой же возможности.
Камчатка, Сахалин, Карелия, Калининград, Сочи, ЕАО, Приморье... Везде с трекинговыми кроссовками и тренировочным планом, включающим треки по 3-4 часа. А это значит, я каждый день открываю приложение с картами и строю пешие маршруты по любопытным местам.
Я люблю приезжать куда-то и попробовать жить, как местная. В разных городах, в разных районах городов, за городом - чем разнообразнее план, тем лучше. Работа на удалёнке позволяет так делать. Был бы интернет.
Терпеть не могу туристические места - они все на одно лицо.
К тому же я несколько лет думаю, куда могла бы переехать. Пока никуда не захотелось на постоянку, но было очень любопытно сравнивать ощущения от жизни в разных точках России.
Пока никуда не тянет.
Сейчас единственное, что вдохновляет - это Северный полюс. Круиз на ледоколе, бескрайние просторы. Небо, море, лёд.
Самое интересное - какие там звуки, какой запах, какой воздух на вкус?
❤3👍2🎉2🔥1
О работе со смежниками.
Это самое сложное. Спроектировать систему, найти ошибки, риски - это всё просто. Писать код - просто, скучно и долго.
А вести производственные конфликты, переговоры, компромиссы - вот тут приходится поработать.
Несколько лет назад старшая дочка (а она хотела тоже пойти в разрабы) наблюдала за моей работой и сказала: мама, ты же программист, я не понимаю, как ты разрабатываешь. Ты только письма пишешь и по телефону говоришь 😂
А ей говорю: ну вот так я пишу. 10 строк за полгода, и то, если больше некому. Зато документашку читаю по 500 страниц в час.
Поначалу я думала, что со мной что-то не так. А потом оказалось, что это и было началом архитекторской жизни.
❤10👍1😁1
Довольно странно для такого упоротого ботана как я, но ролевые игры обошли меня стороной.
Не, я как-то в студенческие годы ездила на игруху по Толкиену. Мне дали деревянный нож и отправили на разведку.
Всё это было занятно. А шастать ночью по лесу я приучена с детства. Но я и друг приехали без палатки, в итоге спали ночью возле костра. И я это запомнила на всю жизнь 😂 Никому не посоветую, потому что одну половинку жгло костром, а вторая обледеневала, и мне приходилось крутиться каждую минуту, как бычку на вертеле. А другу было ещё хуже, потому что он поддерживал костёр, и не спал вообще.
Зато я точно представляю ощущения героев романтических квестов с ночёвками у костра. И от этого ещё приятнее читать их под тёплым одеялком.
А вот D&D и подобные НРИ почему-то вообще не появлялись на горизонте. Подозреваю, что в мою активную социальную жизнь просто не могла пробиться такая махровая нердятина.
Но вот сейчас до меня эта история дошла.
И это настоящее спасение при работе в режиме удалёнки. Я вижу коллег в основном в виде чёрных квадратиков с фамилиями, а то и без.
Мне впервые в жизни по-настоящему не хватает живых людей вокруг, когда я перешла на удалёнку! И вот уже 4 года я специально хожу и вписываюсь в живые встречи - клубы, завтраки, мастерские, походы, настолки. Это не на 100% удовлетворяет мои потребности в живом плотном динамичном общении, но всё ж это что-то.
У меня ещё есть плейбэк театр, но мы никак не можем наладить график репетиций. Поэтому встречи наши яркие, но слишком редкие, чтобы я могла на них рассчитывать.
А ролевки, похоже, претендуют занять особое место в сердце. Потому что там я можно добрать всего, что не подвозят на работе и семье.
Вот не зря всякого рода сисадмина, разрабы и прочий инфоинженерный люд любят D&D и прочие ролевки. Живые люди нужны, но нужную интенсивность и разнообразие эмоций попробуй ещё проживи... Опять же, и умище куда девать? Играть за компом после рабочего дня за компом - прастите...
❤4🔥1🤓1
Почему я не хочу уезжать с Дальнего Востока.
Вчера разговаривала об этом с таксистом - уроженцем Баку. Он живёт на ДВ 40 лет, и быстро начинает скучать по нашим местам в родном Баку. Почему наш непопулярный край так цепляет?
Одно время я рвалась отсюда, как все. Ну типа, образование так себе (это неправда, образование научило справляться с чем угодно на свете при помощи мозгов и паяльника, а педагоги искренне вкладывались в каждого студента). Вроде как скучно (скука - единственный мотиватор истинного творчества, я стала основателем нескольких отличных тусовок и навыдумывала кучу всяких штук для каждой из них). Вроде как нет работы (это неправда. Я поработала в Майкрософте, принесла лицензионное ПО как норму в регион. А как технарь поработала во всех компаниях, где хотела. К тому же благодаря удалённости от Москвы у меня везде было очень много самостоятельности и свободы, и сорвала нос везде. Всё я щупала на практике, а мои навыки траблкиллера отточились до толщины нанобритвы).
Теперь я могу хоть завтра сесть на самолёт и уехать в любой регион России одна или с семейством. И жить там хоть месяц, хоть год. Я могу приложить немного усилий и найти работу во многих странах мира. Но.
Я несколько лет ездила по всем местам, которые меня привлекали. Жила как местная - снимала квартиру, ходила в магазины и кафе. Работала в обычном режиме, а по вечерам и выходным развлекалась. Входила в местные тусовки, болтала с таксистами и официантами, избегала нахоженных туристами троп.
У меня есть свой топ мест для жизни в России. Важны климат, природа, доброжелательность и открытость окружающих, возможность небольших приключений и простая вкусная еда в лёгком доступе.
И оказалось, всё это есть у меня в 10 минутах от дома, притом в большом разнообразии.
В следующий раз напишу, почему я так и не нашла лучшего места для жизни, чем мой родной край. Что цепляет лично меня.
❤12🔥2
Одно время я копила на квартиру и подрабатывала дежурным dba московскими ночами.
Любой аутсорс - это, конечно, школа жизни. Когда в твоей ответственности работоспособность ~7к+ инстансов различных БД, то паучьи админские навыки оттачиваются до уровня мастера кунг-фу, определяющего, как поразить уязвимую точку противника по нюансам движения крыла бабочки, которую видел утром в саду во время утренней медитации.
🔥5👍3
Круче всего было дежурить московскими ночам на Камчатке. Принимаешь смену в 9 утра, жаришь чавычу, делаешь бутеры с красной икрой. Овощи, конечно, это роскошь. Поэтому ем что попроще раздобыть.
Сидишь спокойно на кухне, завтракаешь. Посматриваешь сообщения, где что триггернуло на серверах. Болтаешь с напарником о насущном. Днём попилишь немного какой-нибудь проект или стенд какой соберёшь. За окном всё в снегу.
А потом в онсены с минеральной водой. Сверху снег идёт, снежинки растворяются паром, не долетая до воды. А я растворяюсь в воде, все беды и заботы уходят, как будто и не было их никогда.
Пс: а фотка на Халактырском пляже, конечно
👍5🔥4
Задачка. Что несёт меньше рисков в случае быстрого роста объёмов данных: один большой кластер со всеми данными или несколько кластеров среднего размера?
Оказывается, сегодня международный день всех женщин и девочек в науке!
Я так и не занялась наукой (почти).
Но мечтала стать учёным. Сначала хоть каким-нибудь учёным, чтобы попасть в космическую экспедициию.
Потом после университета звали, конечно, заниматься наукой, но я выбрала семью.
Потом я немного занималась теорией музыки, даже статью написала на конкурс (2 место, но я очень горжусь работой, я её прямо ювелирно выточила из множества ассоциаций и переплетений смыслов).
Иногда я думаю наконец-то подключиться к научным исследованиям или вообще целиком туда уйти. И тогда это будет физика солнца.
🔥6👍3🎉1
В прошлом году меня не взяли на один проект из-за английского. В целом, я давно и довольно свободно читаю, что-то говорю и нормально слушаю. Специально английский я не учила, а так. База в универе, а потом книжки в оригинале, ютуб, документация, болтовня на конференциях и с англоязычными знакомыми.
Но тут мне уровня не хватило. А работа была для меня блеск - ездить на переговоры в Дубай, сидеть рядом с РП и светить лицом и головой как технический эксперт. Я прям уже представила себя и коллекцию украшений в стиле какого-нибудь кибер-минимализма.
Притом мне сказал рекрутер, что месяца три меня б подтянули - и я бы ок, уровня хватило бы. А я перед этим года два ни с кем не разговаривала и особо не читала ничего, кроме техдоков в режиме саранчи.
И я наконец-то вздыбилась, психанула и записалась на курсы.
И что-то чем дальше, тем хуже( все, что было лёгким и интуитивно понятным в болтовне, стало сложным 😭 я стала везде замечать ошибки и неточности. Я стала подбирать и забывать пачками слова из активного запаса, хотя я их точно знаю. Согласование времен взрывает мне мозг, а предлоги вызывают чувство, что проще лечь и умереть.
Но я прорвусь, я знаю. Кривая Даннинга-Крюгера вывезет.
А вот если б не ушедшая из-под носа работа с перелётами к арабским заказчикам - я бы так и думала, что у меня нормальный такой крепкий B2 😂
❤2👍2😁1
14 февраля. Во что, значит, мы, архитекторы, влюбляемся.
Я люблю математику! Самые острые моменты ощущения красоты я испытываю от понимания математических концепций. Вот тот самый момент, когда математическая теория входит в меня, становится понятной, зримой во всех деталях - вот этот самый момент я чувствую слияние с прекрасным, а мир для меня взрывается миллионами радужных осколков.

Самое яркое впечатление из всех - это было освоение учебника по матанализу в режиме термита.

На одну из самых первых унивеситетских пар пришёл зав кафедрой матанализа - наш педагог. Он презрительно оглядел нас всех, громко бросил на стол журнал, как бы резюмируя увиденное. А потом нежно взял первый том учебника Кудрявцева, показал нам его так, как показывал бы архиепископ святое писание макакам - и промолвил:
- Мне сказали, что я должен научить вас матанализу. Наши математики - не чета вам, варварам-крысоедам проходят этот учебник за год, и их результаты плачевны. А у вас такой учебный план (тут он ткнул в журнал и скривился, как будто там дохлая крыса), что вам... и тут он внезапно ласково и печально улыбнулся... вам придётся освоить половину учебника за две недели. А кто этого не сделает - тот дальше ничего не поймёт!

Этот перфоманс произвёл на меня, конечно, неизгладимое впечатление. Я две недели торчала до закрытия в читальном зале с пачкой бумаги, ручкой и этим самым учебником.

О, сколько я испытала мук и наслаждения! Самое яркое было, конечно, от осознания, как из теории множеств вытекает многообразие алгебр, а потом рождаются наши привычные числа и операторы. Всё, что я знала, не знала и даже была неспообна сфантазировать, рождалось на моих глазах из простеньких аксиом, как вселенная из макового зернышка! И это после куцей и пресной школьной математики (это я ещё расскажу и про неё хохму потом).

Это как целый космос и наш маленький уютный мирок, который мы поначалу считаем огромным единственным и несомненным.
Конечно, эту половину учебника я прогрызла насквозь, и только облизнулась. Теперь я чувствовала настоящий голод.
Мне тогда только-только исполнилось 16.
❤9❤‍🔥4
Что самое сложное в работе архитектора?

Самое сложное - выбрать цвет стрелочек.
Цвет - моя самая больная тема. Я жёстко слежу, чтобы в переписке не называть васильковый цвет васильковым, небесно-голубой - небесно-голубым, индиго, бирюзовый, аквамарин, электрик, петрол, ну вы поняли... закрываю глаза и твёрдой рукой везде пишу - коллеги, вот те синие стрелочки!
Девочки, простите меня.
❤6🤓3😁1🎉1🦄1
Дочка прислала подарок из Нска. И внезапно они так хорошо раскрылись на мне и ирисами, и мхами, и какими-то душистыми полевыми цветам - клевером, что ли. Медвяным духом и тайной.
Сижу на совещании и прям чувствую себя пересекающей границы миров, путешествующей и в верхние сферы, и в самые глубины незримого. Цифровая колдунья, встречающаяся с себе подобными в других измерениях. Через гарнитуру свои колдунские штучки.
❤11🔥1
Многие знакомые интересуются, как я поддерживаю системы с телефона. А я так делаю. Делюсь опытом.
1. Скорее всего на стороне сервера есть впн. Нужно установить приложение клиент впн. У меня ни разу не было с этим проблем. Под любой протокол есть приложение на телефон, даже скрепный Континент у меня без проблем заводился.
2. Нужна прога для подключения через ssh. Конечно, я поддерживаю только линуксовые серваки. Виндусовые тоже можно, но морока же, потому я их избегаю. Я юзала несколько прог для ssh, все они неуклюжие, со своими недостатками. Но к любой из них привыкаешь и к тому же неудобство интерфейса приводит к п. 3
3. Нужно все системы оптимизировать так, чтобы для их диагностики и починки в критических условиях нужно было как можно меньше команд. Самая первая помощь - это рестарт сервиса, конечно. Чем тупее методы, тем лучше они работают. Сложности оставьте для олимпиад, конференций и обучения. В реальной жизни чем проще, тем лучше. Ну и если надо посложнее - заранее нужно заготовить скрипты и оттестировать их.
4. Заинтересованного бизнесового коллегу, например, своего проджекта, обучить подключаться к терминалу и выдать инструкцию с простыми командами для самых распространных сбоев. Он сам рестартанёт сервер или что-то сделает по 2-3 шаговой инструкции. И ещё я прошу присылать мне логи и ошибки в телегу. Это план Бэ) потом он постепенно становится планом А.
Есть частные случаи - подключаться к БД, писать код, посмотреть логи. Для этого у меня тоже есть программки на телефоне) ну и потому что я все делаю так, чтобы не надо было думать и искать, где что посмотреть при каких ошибках. Чтобы все было на виду и очевидно. То есть -
6. всегда вывожу точки контроля в удобные и простые доступные места.
А также
7. сохраняю запросы и скрипты, которые могут пригодиться в будущем. Куда? Не поверите! В заметки.
🔥7👍3❤2
Празднуете?
🎉3