PHP Symfony Developer / TechLead в Вакууме
  • Мало свободных страниц в загране

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

  • Возраст в IT. Так-ли он важен

    Я слышал, что от 5. По факту — берут с тремя и дают зп+лычку, если чёто знаешь больше других и проекту подходишь.

    Підтримав: Loboda Andriy
  • Middle — Senior прибавка зп

    Сначала надо прыгать, чтобы как можно быстрее дорасти до синьера по знаниям. Потом, когда уже синьер и опыта 5+ лет, рынок не даст того роста, который он давал, когда ты был джуном и миддлом. Да и с возрастом уже начинает хотеться спокойствия.

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

    Вообще, по-хорошему, будучи синьером я вообще не вижу смысла куда-то резко рваться, имея синьерскую рыночную зп. Разве-что захочется перепрофилироваться или потолочные зарплаты вырастут или какой-то стартап или компания зайдет, которая будет платить 5к+ и там кондиционеры будут хорошие...

  • Мало свободных страниц в загране

    Так украинские погранцы и не ставят. У меня ни одного украинского штампа нет.

    Підтримали: Sviatoslav Sydorenko, anonymous
  • Middle — Senior прибавка зп

    5 лет на одном месте сидеть можно только в том случае, если не мониторить рынок и не присутствовать на линкедине. Иначе, вы просто не сможете противостоять новым вызовам. Ваша рыночная стоимость растет в разы за первые 3 года. Сначала вы стажер на $300, потом (через полгода-год) джун на $800, потом еще через год миддл на $1500-2000, потом начиная с 3 лет+ опыта уже вам начинают приходить синьерские вакансии на 3к+. И если за всем этим следить, ходить по собеседованиям и учить все то, что спрашивают на собеседованиях, то легко будешь расти и по скиллам и по зп.

    А сидя на одном месте и не следя за рынком у вас через год стажерства будет $500, а не $800, потом какие-нибудь $1000-1200 вместо $1500-2000 и т.д. Потому что компания не будет вам каждый раз поднимать зп в 2 раза. Каждый год, грубо говоря. Они поднимают на 5-10% и все. А рыночная стоимость ваша растет на 100% каждый год (при условии вашего активного развития).

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

    А когда ты уже на потолочной зп в продуктовой компании с опытом 5 лет+, то больше за вас не дадут и прыгать туда-сюда такого большого смысла уже нет. Рынку то нужны синьеры, на эту позицию готовы любого брать, кто по знаниям подходит. При этом неважно есть 5 лет опыта или нет. Можно и с тремя, если активно расти прыгая туда-сюда.

  • Возраст в IT. Так-ли он важен

    Как ты не можешь понять, что твое здоровье гораздо важнее каких-то там проектов. Тебе надо не колесо подбирать, а искать радость жизни в другом. Толку с того, что ты подсядешь на таблеточку и вытянешь какой-то проект? Что с того? Хозяин бизнеса купит себе майбах, а ты — новую пачку таблеток?
    Ты в 49 напоминаешь раба с горящими глазами как-будто только после ВУЗа. Только тому рабу надо в кратчайшие сроки изучать то, что нужно рынку и он горбатится, т.к. за ним орда вайтишников стоят, а у тебя все уже есть и даже больше чем надо, а ты переживаешь.

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

    Неужели сам подушку не накопил? Или скучно просто дома сидеть?

  • Возраст в IT. Так-ли он важен

    Так кризисы — это ж самое классное время для заработка. Мои знакомые москвичи рассказывали как за год работы в кооперативе\коммерции\спекуляции можно было квартиру в Москве купить это в 1990. Уже доллары во всю ходили. Знай только где вертеться. В середну девяностых по сути такая ситуация была как в Украине сейчас. Типа есть бабло из-за рубежа и есть куча народу живущая за 50 баксов в месяц. Зарабатываешь там, тратишь здесь. В Москве куча зарубежных контор было, которые баксами платили, плюс местные нефть-газ-распил. А сейчас кому повезло в 90е подняться во всяких тайландах-черногориях круглый год живут с аренды своих квартир или бизнесы попродавали...
    Я вот как раз задумываюсь о старости. Меня эти обсуждения сплавов по днепру в 35 сильно подстегнули. Я себя футболистом каким-то почувствовал, у которого карьера там 10-15 лет от силы. И если не набарыжился до конца жизни, то бомжуешь. Чё и спрашиваю тебя. Что есть подушка на старость? Сколько надо и где. Вот ты бы что поменял?

    Підтримали: Loboda Andriy, anonymous
  • Возраст в IT. Так-ли он важен

    Ну ты занимаешься тем, что называется стартапами. Нервная разработка с нуля с непонятными требованиями и фиксированным бюджетом. А бабло как раз в саппорте, стабильное бабло, которое не кончается. Вот надо впрягаться в чужой говнокод. Это неприятно, но прибыльно и надежно и по нервам незатратно. Ну написали 23 летние синьеры говнокода, ну возьми покрой тестами его сначала, потом порефактори потихонечку. Зачем жемчужины выделять? Ты же, если знаешь как код пишется правильно, можешь из любого говна сам жемчужину зарефакторить. Ну полгода-год у тебя на это уйдет, но тебе все время оплатят это, а дальше экосистема у твоя собственная будет. Разберешься, будешь саппортить. Тестами только покрыть, чтобы при рефакторинге не рассыпалось (это да, большинство разрабов не любят тесты), да времени выбей (с этим не будет проблем в продуктовой компании, чей этот мамонт и есть по сути). Просто смени чуть сферу деятельности, меня самого один стартап до такого нервного срыва довел, что я на успокоительных 3 месяца просидел. Не от возраста это зависит, поверь, а от менеджмента и денег заказчика. Есть деньги — будешь 10 лет херней страдать, нет денег — будут гайки закручивать и сроки требовать.

  • Возраст в IT. Так-ли он важен

    Ну я в 21 год, когда читал эти треды про сплавы, физически не мог накопить подушку именно на старость. Да и сейчас в 24 ситуация не сильно лучше, т.к. коплю на квартиру. Не то, чтобы мне вообще не было где жить, но своя квартира в Кривом Роге не сильно на старость прокормит, а сейчас её на дне кризиса можно продать разве-что за треть стоимости... Приходится копить с нуля. С синьерской зп можно взять хату за год, но в пригороде Киева или в самом херовом спальнике. Сначала, хотелось бы для себя квартиру прикупить в классном районе, а не для старости, чтобы за 5к гривен сдавать...

    И вообще, что есть подушка на старость? Я вот думаю квартирами себе старость обеспечивать, но это же надо сейчас не по отпускам ездить да по заграницам, а откладывать почти всю зп несколько лет... Плюс опасения, что пузырь айти все-таки лопнет... Не знаю, молодой, хочется мир повидать, сыров поесть, машину какую-то необычную (или спортивную или там бизнес-класса что-то), чтобы не просто жопу возить, макбуки там, ну что у 23летних сеньеров в почете? Я ж недалеко от них ушел, на год всего старше.

    Підтримав: Loboda Andriy
  • Возраст в IT. Так-ли он важен

    Да чё ты заладил про возраст? Я от тебя много читаю текстов, что ты сначала какие-то космосы имплементишь, а потом в больничке с выгоранием и на препаратах. Может, видишь, что хреново со здоровьем, надо пойти кнопочки подвигать или sql-запросы поконструировать для аналитик, а не делать проекты с нуля и впрягаться в сдельную работу?

    Підтримав: осокор тауер
  • Возраст в IT. Так-ли он важен

    Меня это тоже очень радует. Только я в 2011 году, когда первый раз на доу попал, замечал, что сплав в 35. Даже треды тут на форуме старые именно про эту цифру говорят. Аргументация та же. Но вырос средний возраст с 24-25 до 27-28 за последние 5 лет, он растет ровно по мере старения основной массы айтишников, вошедших в айти на пике роста лидеров рынка в докризисные 11-13 годах.
    Сам еще пару лет напрягался типа, а вдруг вот промотаю золотое время долларовых зарплат в Украине, а потом мне 35 стукнет и бомжевать пойду, но сейчас уверен, что все ок будет. На работе обычно пхпщные синьеры и прочие бекендеры как раз в возрасте около 30, чаще 30-35. Я со своими 24мя годами вообще в этой сфере себя мелким чувствую. Основная гонка у фронтендеров сейчас...

    Підтримав: Loboda Andriy
  • Возраст в IT. Так-ли он важен

    Может, не надо на себя много брать? В одиночку тащить проекты, работать сдельно и т.д. Может, нужно работа почасовая по канбану, т.нз. «сосание вялого хера», извините. Когда не на результат работаешь, а выполняешь хотелки заказчика в крупной монструозной системе. Передвигаешь кнопочки, пишешь тесты, потом опять передвигаешь кнопочки... ну, саппорт, рабочий проект приносит миллионы, а ты знаешь как он устроен и кнопочки двигаешь. Насколько я знаю, такие люди ценятся и могут на одном месте и по 5 лет и по 10 просидеть. И еще по зп накидывают на 3-5% в год. Там как правило нету требований по срокам, скорее, сделать так, чтобы оно при деплое не отвалилось. Качество 100500 раз бдят, 7 раз отмеряют... 23-летним сеньерам скучно, зато голова работой не занята, можно книжек на работе почитать, расслабиться, а зарплата капает. :)

    Особенно, таким на коболе и фортране банкинги грешат, но есть банкинги и на джавах и всякие CRM долгоиграющие по 10-15 лет на пхп писанные. Конечно говнокоды, но спокойно и тебя любят и в попу целуют.

  • У вас «белая» зарплата? Такие компании ещё есть?

    Каждому учителю по ФОПу! Вместо зарплаты каждый месяц оплачивать инвойс!

    Підтримав: Егор
  • PHP: піти не можна лишитися. Піти

    Да, в базе данных, но управляет этим полем доктрина. Она его инкрементит, изменяет, смотрит на него при файндах...

  • PHP: піти не можна лишитися. Піти

    Я понял вас. Реализовать оптимистическую блокировку в работе с доктриной можно. К сущностям нужно добавить поле $version и аннотировать его как @Version с типом данных int или там dateTime. Доктрина посмотрит на эту аннотацию и автоматом будет инкрементить поле (или ставить текущую дату). Потом, при селектах вы указываете необходимый номер версии и OPTIMISTIC LockMode. Если версия не та, доктрина бросит соответствующий эксепшн, который вы обработаете.

    Но хз как это использовать, когда на 1 реквест поднимается инстанс, а потом все умирает. Между этими реквестами надо это дело где-то хранить самому. С семеркой, наверное, будет уже получаться запускать пхп как именно сервер, постоянно живущий и это все заведется так, как хотите вы.

  • Набор на бесплатные курсы iOS от IDAP Group в Кривом Роге

    Переезжайте в Кривой Рог! :) Только дождитесь пока автор скажет адрес курсов. Город очень длинный, если неугадаете с районом будете 2 часа добираться.

  • Набор на бесплатные курсы iOS от IDAP Group в Кривом Роге

    Сначала обрадовался, что в моем родном городе растёт айти-сфера и заходят компании, а потом пролистал вниз, посмотрел тестовые... Эээх!

    Тестовые задания как-будто писаны для выпускников 4-5 курса программной инженерии КЭИ кафедры Зеленского (дядя очень с душой готовит студентов, давая им современные тулзы для разработки десктопных приложений, включая даже WPF для C#). Когда я в 2013 году заканчивал, это была единственная кафедра и единственный местный ВУЗ, который очень хорошо давал современное программирование на C# под Windows. Выпуск с этой специальности — около 15 человек в год, из которых где-то половина тут же уезжает работать в бодишопы. А что делать остальным? Местный технический вуз (КТУ) до сих пор начитывает паскаль и дает Borland C++. Краем уха слышал о QT там, но только на C++ и знают его единицы, а тут хотят от стажера сразу окошечки делать, когда почти все местные вузы дрочат 5 лет консолями... Хееее. Про людей без вузовского бекграунда я вообще не говорю, там шансов нет.

    Потом проскролил ниже отзыв на компанию и понял, что это не про курсы, не про стажировку, а про чистое самое настоящее рабство. Хотят шарящего выпускника профильного ВУЗа, не студента (студент не сможет пятидневку работать), с опытом и знанием хотя бы одного языка и UI библиотеки и этому чуваку, который может поехать в Днепр кодить на том же шарпе или за неделю въехать в пхп и зарабатывать от $300 в городе (пхпшники в КР нужны, знаю по себе), не хотят платить ни копейки!!! Ой-ой-ой! Сразу мысль, что на месте описанного выше выпускника со знаниями я бы, наверное, походил на курсы 2 месяца, но потом просто возненавидел бы это место и постарался бы свалить оттуда. Потому что когда бывшие одногруппники сидят в днепропетровском Сёрве или в Епаме или на пыхе там за год миддлы на $1000+ и уже понтуются сырами-зеркалками, а кто понаглее уже на хатынку откладывает, а ты еле-еле стажировку закончил и еще тебя в рабский контакт на $500 к Кривому Рогу привязывают... ЭЭЭЭ!!! Конечно, любой убежит. Поедет в Киев на $700-800, может даже на косарь.

    Легко учить людей айосу, когда ему 5 лет в вузике мозги полоскали ООП с первого курса и заставляли базы дергать и еще много чего еще. А вы возьмите чувака с чистыми мозгами без базы и научите. Слабо? Зато такой никуда не убежит. И никому кроме вас в ближайшие год-два не понадобится.

  • PHP: піти не можна лишитися. Піти

    Так PHP не сидит в памяти постоянно. Он же «создан, чтобы умирать». Каждый запрос — это отдельный инстанс, в котором поднимается PHP, весь фреймворк, инициализируется доктрина и т.д. Поэтому обычно если уже посылают запрос на сервер, то в конце, если все объекты изменились и все ок, делают flush(). Если флаш не сделать, изменения потеряются.

    Но я не до конца понимаю зачем делать, указанное вами. То есть, при нажатии на кнопку «ОК» и так уйдет вся форма целиком, объект сущности изменится в соответствии с переданной формой (если она валидна), потом произойдет флаш и объект обновится. А в чем смысл посылать несколько запросов на изменения объекта, не делая флаша?

    Вообще, конечно, можно сделать php демоном, который будет висеть в памяти все время и ждать каких-то параметров, тогда все существование демона в памяти заперсисченные данные будут лежать вот в том массиве $entityInsertions, а потом произойдет flush() и они разом применятся. Но для веба это какое-то извращение, зачем, если на 1 request надо отдать 1 response?

  • PHP: піти не можна лишитися. Піти

    UnitOfWork следит за изменениями объекта и шедулит объект на insert/update/delete, если он таковые изменения видит. Он ни с какими запросами не работает и даже не имеет понятия о том, даже какой тип СУБД используется. Потому что он знает только про уровень объектов и максимум что может — это в зашедулить в нужном порядке insert/update/delete.

    Уровень запросов доктрина хендлит с помощью Persisterов. Для каждой СУБД разных. Перзистер вызывается, когда происходит flush(). Выгребаются все вот эти изменения зашедуленные и персистер делает им типа executeInserts() или аналогичное. Там старается как-то оптимизировать несколько запросов в один пакетный, если это возможно. Ну и собирает сам SQL. Персистер можно и отдельно использовать.

    Когда, например, новая сущность заперзистена и зафлашена она становится managed, то есть про неё знает entityManager, она через него связана с конкретной строкой в таблице БД. Тоже самое, если сущность выбрать из БД запросом. Доктрина смотрит на первичные ключи и менеджит по ним (композитные тоже шарит). Тоесть если ты сделаешь refresh managed сущности, то доктрина перечитает по первичному ключу связаную запись, сработает гидрация поновой и у тебя будет актуальный объект. Если поменять первичный ключ, а потом перечитать, тогда жопа, да. Но на моей практике такого никогда не было.

    Підтримав: Serhii
  • PHP: піти не можна лишитися. Піти

    Доктрина берет spl_object_hash() от объекта, над которым надо проделать insert/update и хранит его в массиве вида
    $entityInsertions = [ spl_object_hash($entity) => $entity]; (если речь идет об инсертах)
    Такие же массивы для update/delete.
    Массивы хранятся в памяти. Если их заперзистили, но не зафлашили, то при die() эти массивы очистятся.

← Сtrl 1... 7576777879...82 Ctrl →