Ваня IT
135 subscribers
5 photos
1 video
55 links
Заметки про IT, профессиональное и личное развитие.

Дзен канала: без назиданий, только моё мнение и опыт.

Написать мне t.me/skatromb
Download Telegram
to view and join the conversation
Сказка про налоговую

Однажды, я работал на одну компанию по ИП, а в 2019 году закончил и, соответственно, закрыл ИП. Когда работаешь по ИП нужно сдавать много разной отчётности, платить налоги и страховые взносы государству. В этом мне очень помог Тинькофф Бизнес — они сами всё считают, так что в большей части случаев нужно просто нажать на форме «Подтверждаю» и вся бумажная волокита окончена.

Вот и сейчас, чтобы начать работать со шведами, мне потребовалось открыть ИП, чтобы выставлять им счета, которые они будут оплачивать. И вот тут-то сказка и начинается.

Я решил открыть ИП на всякий случай заранее (как предусмотрительно), за полтора месяца до начала работы. И вот, прошёл месяц, как мне приходит уведомление о заблокированном счёте. Оказалось, налоговая где-то накосячила в процессе закрытия моего ИП, и когда я его снова открыл, не нашла декларацию за 2020 год (когда ИП был закрыт). ШТА?!

Следующий целый месяц у меня ушёл на то, чтобы эту ошибку исправили: я звонил в налоговую, писал в налоговую, они говорили, что исправили, звонил в банк, писал в банк — они отвечали, что им не пришло ничего от налоговой и снять блокировку они не могут. Цикл повторялся и так раз шесть. В сумме я потратил больше 10 часов и несчитанное количество злобы, чтобы блокировку сняли. Налоговая говорит: «С этим Тинькоффом вечно какие-то проблемы», банк говорит: «У этой налоговой вечно технические накладки», тем временем страдаю и трачу нервы и внимание я из-за чьего-то косяка! Причём разобраться самостоятельно они не могут, не положено. Бесит!

В итоге, только дождавшись официального ответа от налоговой в личном кабинете nalog.ru, подписанного ЭЦП, переслав его банку, я, наконец, обрёл разблокировку. Спасибо тёще, которая посоветовала не звонить, а писать обращение из ЛК.

P.S. Ребята, кто-нибудь выставлял инвойсы зарубежной компании на оплату ИТ услуг? Буду благодарен, если напишите мне, хочу задать пару вопросов 🙂
Я в списочке (осторожно, политота!)

Сегодня я ездил в Троицк и зашёл к родителям. Они рассказали, что вчера к ним приходили из полиции и интересовались мной и женой (хотя мы не прописаны там уже больше полугода). По их выражению, мы находимся в «списках навальнистов», что в этом «ничего страшного нет», но они хотели бы предупредить нас, что организация Навального является экстремистской, и чтобы мы не попали в плохую ситуацию. К слову, «ничего страшного» — это всего-то от 2 до 6 лет лишения свободы за участие в экстремистских организациях.

Что ж, я ожидал, что мои взгляды вызовут внимание силовых структур, кажется, дождался, — видимо, в преддверии выборов у наших властей случилось обострение. Теперь уж не скажешь, что все эти сроки из новостей — где-то там, а если вести себя хорошо и не нарушать законы — бояться нечего. Особенно, зная, как порой работают наши прокуратура и суд.

Грустно, что в собственной стране я вынужден бояться государства просто за то, что мои взгляды не совпадают с их. При том, что я никогда не нарушал УК РФ и не собираюсь. Более того, я разделяю мнение Познера, что это беда нашей оппозиции, что кроме Навального в ней по большому счёту никого и нет.

Остаётся только надеяться, что это пройдёт, и что я уеду из страны быстрее, чем они решат попересажать всех неугодных. Злобно и грустно.
Помидорки не зашли

Вы наверняка слышали про технику работы помидорками: 25 минут не отвлекаясь работаешь над задачей, а 5 — отдыхаешь. Я раз пять пробовал проникнуться ею, но так и не получилось.

Возможно, я просто не умею её готовить, но в обычном ритме для меня более естественно работать по 2 часа с перерывом минут на 20. За это время получается глубоко погрузиться в задачу, проработать её и устать. Если же прерываться через 25 минут, приходится останавливаться ровно в том месте, где ты только погрузился.

При этом, я советую всем попробовать эту технику) Она научила регулярно отходить на шаг от задачи, посмотреть широко, не бьёшься ли ты лбом о стену, которую можно обойти сбоку.

Единственное исключение во имя помидорок я делаю при работе над авариями: когда ты находишься в стрессе, успеваешь потратить запас концентрации ровно за одну помидорку. Перерыв в такой момент помогает широко взглянуть на варианты решения проблемы, сохранить сопособность трезво мыслить и не сделать ещё хуже)
Путь тимлида

Замечательная история в Вастрик.Клубе о разработчике, неожиданно ставшем тимлидом. У меня прям много флешбеков в собственное менеджерство и радости, что не я один такой дурак.

Внизу истории десяток видосов — если залипнете на них, не пеняйте — я предупреждал)
Brew

Пару недель назад я купил новый мак и надо было ставить на него кучу всякого софта: от мессенджеров типа телеги до Xcode и PyCharm для разработки. Давно хотел автоматизировать этот процесс, занимающий приличное количество времени.

Сначала я пошёл смотреть стрим от Феди Борщёва, где он рассказывает про ансибл, который использует сам для этой цели. Но с ансиблом я был не знаком, потыкался с час и понял, что скоро я потрачу больше времени, чем за всю свою жизнь сэкономлю на этой автоматизации. Ниасилил.

Тогда я вспомнил про Brew — консольный пакетный менеджер для маков, которым на редкость просто пользоваться, в отличие от многих других консольных утилит. Получается даже быстрее, чем качать и ставить программы через браузер:
1. Гуглишь, что хочешь поставить например, brew pycharm (или командой brew search pycharm прямо в терминал)
2. Из выдачи копируешь команду brew install --cask pycharm
3. Вставляешь в терминал. Поехало.

Следующий логичный шаг — засунуть все нужные программы с brew install в один bash-скрипт и запускать. Но умные люди уже продумали более разумный способ: составить Brewfile. Пишешь в него программы, которые хочешь поставить, затем запускаешь brew bundle. Готово. Вот для примера мой личный бандл.

Единственная ±сложность — с установкой программ, которые лежат только в App Store — они ставятся не напрямую из brew, а с помощью утилиты mas. Ей рекомендуется скармливать не имена пакетов, а айдишники — их можно искать с помощью search:
mas search xcode, затем, найдя нужный id, устанавливать:
mas install 497799835
Месяц со шведами

Вчера был месяц, как я работаю в Fishbrain! Новости с полей:

Я до сих пор не доделал свою первую таску, за что постоянно переживаю, что такой медленный(. Но хочется ведь сделать качественно, а чтобы хорошо разобраться со всеми этими облаками, новыми фреймворками, бест-практисесами и структурой данных, времени уходит очень много. Надеюсь, меня не уволят 😬

Кстати, об увольнении. Моего коллегу аналитика Ноя уволили спустя 2 месяца испытательного срока. Этот тот, что африканец, он, кстати, оказался из Египта. Так что дайвёрсити подуменьшилась 🤷🏿

Ещё похоже, что первая зарплата мне придёт с почти двухмесячной задержкой: сначала месяц отработал, а теперь надо ждать 25 числа как платёжного дня. Расчехляю отложенное, благо, есть кое-что 💰

На этой неделе мой опытный коллега ушёл на неопределённый срок в отпуск по семейным обстоятельствам, менеджер в отпуске уже две недели как, так что несколько дней я был единственным дата инженером в компании =) 🥇

Из интересного: менеджер на время отпуска предложил каждому из нас побыть тимлидом по нескольку дней. Кто постарше — тому неделю, кто помоложе, как я — пара дней. Неожиданно, страшновато, но приятно чувствовать такое доверие и готовность отдавать отвественность. Ответственность сводится, по большому счёту, к ответу в канале в слаке на входящие запросы, но тем не менее 😎

Чтож, надеюсь, месяц не последний!
Вакансия бизнес-аналитика к шведам

Как я писал в прошлом посте, у нас освободилось место бизнес-аналитика. Возможно, даже два. Так что если вы можете спик бритиш фром ёр харт и хотите поработать в шведской компании с рыбаками (и мной) на удалёнке — велком смотреть вакансию и шлите мне резюме, порекомендую 🙂
Парный траблшутинг

Что-то я совсем заработался и давно ничего не писал. Отчасти из-за того, что этой неделе у нас дважды падал Airflow. Вероятнее всего, причина в каких-то проблемах Amazon managed DB. Потратили на дебаг в сумме дня полтора, а решилось всё ребутом и редеплоем 🤦🏾

И если причину падения не удалось установить со 100% вероятностью, то другую вещь я понял однозначно: мне ужасно не нравятся интерфейсы AWS. Путанные, перегруженные лишней информацией, с тысячью альтернативных вариантов захода на нужную страницу. Пока найдёшь то, что нужно, обругаешься. Интерфейсы гугловского GCP по мне куда интуитивнее.

Что мне понравилось — это практика парного траблшутинга. Подключаешься в гугл митс, шаришь экран — и вперёд.

Во-первых, это хороший способ не спороть горячку — рядом с тобой вторая голова, которая скажет, если ты собираешься сделать хрень.
Во-вторых, это классный способ передачи знаний. Если только один человек умеет чинить прод — можно так пошарить знания и уменьшить бас-фактор.
В-третьих, в удалённых командах это классный способ тимбилдинга — ничто так не сплачивает, как совместная борьба с общей бедой 🙂
Денежки

Сегодня у меня радость — получил первую зарплату от Fishbrain 🙂 Пришлось, конечно, немного попотеть, чтобы вникнуть в налоговое законодательство, как получать деньги от иностранной компании, но в итоге всё получилось. Дальше привожу схему и циферки вкратце, как всё работает.

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

Остановился на самом дешёвом тарифе Тинькофф Бизнес за 500₽/мес + подписка Тинькофф.Премиум за 2.000₽/мес — она увеличивает лимит вывода рублей в месяц (или эквивалентной суммы в валюте) + значительно снижает потери на конвертации валюты. Ещё порядка 1.000₽ съедает валютный контроль входящих платежей. Итого — 3.500₽ накладных расходов на банковское обслуживание, что чуть меньше 1% от ЗП.

К этому добавятся налог 6% на доходы (упрощёнка по схеме Доходы) и 1% дополнительных взноcов в пенсионный фонд, которые не подлежат налоговому вычету. Итого выходит 8% обязательных расходов с зп. Щадяще.

Отпуск оплачиваемый 30 рабочих дней в году. Оплата на время отпуска такая же, как и в рабочее время. Компания у себя внутри ведут учёт, сколько дней отпуска я наработал/потратил.
Я, медленный

Поймал себя на том, что стал прокрастинировать написание постов в канал. Быстрых идей в голове нет, а значит, придётся сидеть над постом полчаса-час. При этом, я так и не завершил свою первую таску на работе (лол) — хочется сделать всё качественно и монументально, и по моим ощущениям, я продвигаюсь очень медленно. Ну и в такой стрессовой ситуации садиться за посты крайне некомфортно 😬

Причём это ощущение собственной медлительности со мной живёт практически постоянно. Чувство же, что я быстро и классно что-то запилил, возникает от силы раз в месяц-два, и то ненадолго.

Интересно, а как у вас? Как вы оцениваете свою производительность, часто ли ощущаете удовлетворённость от своей скорости? Что в этом помогает?
А в смысле ли дело?

Я уже больше 2-х месяцев на новой работе, и за это время мне ни разу не задавался вопросом «тем ли я занимаюсь», хотя раньше он тревожил меня регулярно. При этом, я не сильно изменил свой род деятельности: был аналитиком данных с уклоном в инженерию, стал инженером данных с уклоном в аналитику.

И тут меня стали терзать смутные сомнения: а верный ли я себе задаю вопрос? В том ли дело, что я не был близок к своему «призванию», «делу жизни», или это вообще дефектная постановка вопроса? Может, это подмена вопроса и переусложнение, а на самом деле вопросы куда мельче, обыденнее,но мне сложно на них отвечать? Тогда может оказаться, что профессиональная удовлетворённость складывается из куда бóльшего числа маленьких кусочков, а не упирается в один вопрос.

Если посмотреть на детали, вот что изменилось:
+ много технологий для изучения — стало мало времени/мозготоплива на раздумья о вечном
+ много новых и кайфовых технологий (dbt, BigQuery, Terraform)
+ углубился в интересную мне технарьскую часть, как и хотел
+ получаю гораздо больше позитивного отклика на работу, даже по мелким тасочкам
+ выросла зп

– нет личного контакта с коллегами (после переезда должно измениться)
– ушёл от классных ребят из Теле2 (хотя тут ребята тоже клёвые 🙂 )

Промежуточный итог: наблюдаю, в том ли дело, что я сейчас загружен сильнее обычно и просто некогда трахать себе мозг «вечным», или действительно, дьявол в мелочах.

Интересно, что вы думаете об этом, какой у вас опыт?
Не держать в голове расследование бага

Поиск причин бага в разработке — один из самых мозгозатратных для меня. Особенно, если в этот момент лежит прод. Пока ищешь причину, перебираешь огромное количество блоков, предположений; уходишь от исходной проблемы вглубь и в какой-то момент уже перестаешь помнить и понимать, что уже испробовано. Да что там, иногда теряешься и перестаёшь понимать, как вообще оказался в текущем месте.

Есть дисциплина, с помощью которой можно сильно снизить когнитивную нагрузку: незамедлительно записывать историю поиска бага. Это можно делать в тикете в джире, или создать .py / .sql файл с разбором. Я делаю и то, и другое.

Пишем коммент: «Есть проблема Х, у неё возможные причины 1, 2, 3. Проверяю проблему 1». Затем пишем код, проверяющий гипотезу, записываем комментом результат.

Если гипотеза подтвердилась — фиксим. Если не подтвердилась, или нужно спускаться на уровень ниже и продолжить исследование, — повторяем: пишем новые гипотезу, код и результат.

Профит
1. Вся история поиска проблемы не вылетит из головы — она записана. Очень разгружает голову.
2. Легко вернуться и перепроверить отдельный кусок, если посчитаешь, что что-то упустил.
3. Остаётся файл с расследованием, который можно прикрепить в джиру. Вся история расследования останется потомкам (или самому себе).
Уровни английского

Прошло почти три месяца, как я присоединился к fishbrain, и мне всё ещё тяжело, когда в день больше часа-полутора встреч на английском. Но обычные викли-митинги проходят уже довольно легко)

Когда я наблюдаю за прогрессом в разговоре на английском, я замечаю, что мозг работает схоже с кодом программ. Пока язык знаешь плохо, вся речь запускается через супер-низкопроизводительный последовательный эмулятор — в виде нашего сконцентрированного внимания. Плюс его в том, что эмулировать оно может что угодно, но делает это крайне медленно и только последовательно. Работаешь на уровне отдельных слов: то ищешь нужное слово, то соединяешь это в словосочетание, то слушаешь, что говорят тебе, то догадываешься о смысле неизвестного слова. Затраты огромные, устаёшь за полчаса.

По мере продвижения изучения, всё больше и больше модулей переходят на уровень выделенных, параллельно работающих узлов, более эффективно тратящих энергию и внимание. В беседе затратное внимание сосредотачивается на высокоуровневых вещах: сформировать смысл предложения, уловить посыл собеседника.

Следующий апгрейд — когда модули переходят на уровень драйвера: низкозатратный, не требующий внимания, происходящий автоматически. Это когда после двух часов общения ты продолжаешь незаметно для себя размышлять и делать умозаключения на английском.

При этом, разные части языка могут находиться на разном уровне: к примеру, технический английский у меня близок к третьему уровню, но стоит отклониться и начать разговор о хобби, домашнем быте или чувствах — я часто скатываюсь до формулирования отдельных слов.
This media is not supported in your browser
VIEW IN TELEGRAM
Требуем «Оскар» для актёров озвучки!
Разбавлю немножко серьёзные щи. Это прекрасно, ящитаю

Автор jack_in_bruges
Презентовать работу

В Fishbrain есть традиция: каждый вечер пятницы в гугл митс все собираются и приветствуют новых людей, провожают старых, а также делают презентации о своей работе. За последние две недели я презентовал дважды подряд: в первой мы с коллегой Хендриком рассказывали, зачем нашей компании дата инженеры (её преимущественно делал Хендрик), а полчаса назад я рассказал о большой задаче, которую уже третий месяц (😬) пилю.
Но там остался только рефакторинг, чесслово!

Мне понравилось делать презентации, стараться увлекательно и просто показать, что полезного ты сделал. Когда ориентируешься на понимание и увлечённость людей, а не делаешь «слайды с цифрами для никого», это приносит кайф.

Кроме того, есть несколько сопутствующих бонусов:

– Прокачиваешь навык публичных выступлений и продаж (собственных трудов)
– Как следствие, становишься увереннее в себе
– Прокачиваешь влиятельность в компании
– Рассказывая всей компании о своих технических штуках, лучше осознаёшь и концентрируешься на бизнес-ценности своей работы. Лечит желание делать рефакторинг ради рефакторинга (ну-ну 😃)
Что делает Data Engineer?

На днях мне написал двоюродный брат, который закончил свою первую книжку по питону. Он спросил, куда дальше двигаться, если он хочет найти работу дата инженера.

Я сторонник учиться на практике, поэтому сразу отмёл идею дать ему очередную книжку/курс. Подумав, а чем я, собственно, занимаюсь, выписал для него список из трёх с половиной задач, которые занимают около 80% рабочего времени.

Чтобы упростить жизнь, мы взяли гугловское облако (можно амазон или ажур, но я больше знаком именно с GCP), которое позволит многие вещи сделать в один клик. Кроме того, для начинающих оно даёт 300$ на 90 дней практики и лимитированные free-tier потом.

Вот список:
0. Создать аналитическое хранилище данных (упрощенно, Google BigQuery просто резиновая SQL база данных) — обычно оно уже есть в компании, но если начинать с чистого листа, придётся его поднимать самому. Благо, делается в пару кликов в GCP.

1. Перелить в BigQuery несколько таблиц из обычной БД. Для этого придётся поднять, например, Postgres (тоже один клик), создать и наполнить в нём таблицы (можно, например, наимпортировать csv-шек из интернетов). Перелить их питоном в аналитическое хранилище.

2. Залить в аналитическое хранилище данные из любого публичного API. Например, прогнозы погоды Яндекса.

3. Поставить эти переливки на ежедневный запуск (например, подняв для этого Apache Airflow из докер образа)

Если выполнить эти задачи и залить на гитхаб, можно смело идти джуном дата инженером. Тем более, что у вас уже будет портфолио в репозитории.
Вина и хуяторство

Последние пару недель снова впал в режим «хуяторства» — когда пишу код без перерывов по 3 часа подряд, обедаю, снова пишу 3 часа подряд, иду пописать, и ещё подход, до конца дня. При этом я злюсь, что что-то не выходит, а к концу дня ухожу с ощущением, что толком ничего не сделал. Раньше я думал, что так и надо, но кажется, всё немного сложнее.

Заметил всё это я лишь вчера и вечером и решил сегодня быть более осознанным. Вот что меня вгоняет в такой режим:

Когда чувствую, что я слишком медленный и боюсь, что люди посчитают меня некомпетентным. Таким образом я избегаю чувства вины за медлительность и стыда, что это кто-то заметил.

Хотя в действительности-то не факт, что кто-то так считает. И вместо того, чтобы пойти и прямо спросить (как сделал бы здоровый человек), я невротически уклоняюсь от этого, злюсь сам на себя, испытываю постоянное внутреннее напряжение, а уж о том, чтобы нормально творчески работала голова, и речи не идёт. Да и быстрее тоже особо не выходит.

Морали нет. #Ваня_невротик
Страна советов

Заметил разницу между европейской и русской культурой: европейцы редко лезут с советами. Сразу предупрежу: выборка у меня небольшая, да и не только из европейцев, да ещё и в основном образованных айтишников, но хочется поделиться ощущениями.

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

Во-первых, они в принципе реже советуют. Высказываешь, например, какие-то затруднения в явном виде, а европеец выслушает, и в лучшем случае поделится своей историей, а в худшем — многозначительно и сочувственно промолчит.

Во-вторых, советы не дают в формате: «Да, чувак, надо тебе …». Никто не говорит, что мне надо — это скорее происходит в формате «Ты меня не спрашивал, но я бы в такой ситуации сделал так. Но ты, конечно, лучше в этом разбираешься, так что решай сам». Как будто ребята после курса психотерапии, короч).

После этих осознаний, меня стали пуще прежнего бомбить непрошенные советы (чаще, конечно, получаю их от родных). Такой совет несёт подтекст «ты ж ещё неразумный, я тебя просвящу», принижает мою взрослость, а кроме того, веет неуважением. Считаю проявлением уважения спрашивать человека, хочет ли он услышать совет, прежде чем его высказывать.

Кто работает с европейцами, поделитесь, похоже это на ваш опыт, или мне так повезло?