• С какой должности лучше начать искать работу среднему fullstack программисту, но только на удаленку на постоянной основе?

    php666
    @php666
    PHP-макака
    Что-то много розовых соплей для человека с 20 (!!) годами опыта. Ощущение, что пишет школьник.

    Утверждение
    Но нужна именно веб-разработка.... Реальные проекты крупные и команды разработчиков чтоб расти профессионально и дорасти до сеньора как минимум.
    ну НИКАК не вяжется с
    работать в офисе не имею возможности - живу далеко за городом и не планирую никуда выезжать
    и с
    иметь стабильный растущий доход и повышения по службе хоть в каких-нибудь пределах.
    Какого повышения ты по службе желаешь, сидя в кресле в своем мухосранске? ЧСВ пробивает озоновый слой. Хочешь карьеру, много денег и т.п. - чемодан собирай, езжай в Москву, устраивайся в крупную корпорацию и хотя бы попытайся.

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

    А сейчас именно этими идеями живу - написать кое-что для себя - реализовать некоторые идеи для создания opensource проекта. Рутинная работа может убить такую мечту.
    А тут вообще ржака. Работа исполнителя априори рутина, она убивает мечту не только создать свой проект, а лишний раз не дает возможности даже заняться повседневными делами, ибо задача рабочего - вкалывать, а не прохлаждаться. Добро пожаловать в real life. И да. Твой opensource нафиг никому не нужен. И за 20 лет можно было уже что-то написать, что ты всё время это делал - не ясно.
    Ответ написан
    4 комментария
  • Почему PHP теряет популярность?

    @skrimafonolog
    Почему PHP теряет популярность?

    Вам кажется.

    Просто ИТ-проекты растут и развиваются.
    Усложняются.
    То, с чем мы имеем дело сегодня - несколько более сложные вещи, чем то, что делали средние программисты лет 10 назад.
    Это вечный процесс.

    И некоторые проекты используют другие технологии.

    Не ожидает ли php участь ruby?

    Ruby как был нишевым так и остался.
    PHP - слишком массовый.

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

    Даже если и PHP сойдет на нет - это дело долгих десятилетий, ибо:

    1. Слишком уж много уже существующих проектов. Их тоже нужно поддерживать.
    2. Выбор языка - это еще и выбор доступных исполнителей на рынке труда. В одночасье миллионы программистов не сменят специализацию.
    Ответ написан
    Комментировать
  • Почему PHP теряет популярность?

    Объясняю:

    1) Небольшая фирма, небольшой проект, никогда не сможет конкурировать за "рабочие руки" с такими гигантами, как mail.ru/yandex/сбертех/альфа-лаборатория и прочие. А значит разрабатывать проект на Java, который еще не приносит деньги - глупейшая ошибка менеджмента. Ибо вы просто не найдете руки, либо они будут стоить очень много. По этой же причине не стоит выбирать для проектов .net (хотя там в общем ситуация в плане рук получше).

    2) Выбирать для проекта, который еще не приносит денег, что-то типа python/ruby - глупо. Ибо найти хороших программистов на этот язык сложно (и они будут стоять больших денег).

    Ну тут стоит понимать, что это реалии рынки СНГ и Европы. Исторически сложилось, что язык для новичков в СНГ и Европе был PHP (поэтому так много проектов на php), в США - это Ruby(Python), а, например, в Австралии - это Python.

    В итоге: небольшие капиталисты в СНГ(Европе) - выбирают php, это дает много работы на PHP, предложение толкает людей учить PHP, что уже в свою очередь толкает создателей PHP его улучшать.

    __

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

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

    __

    Количество вакансий уменьшается по простой причине. Готовые облачные решения типа (shopify/wix) + возможность заменить на старте сайт на социальную сеть, дают снижение спроса.
    Ответ написан
    1 комментарий
  • Почему PHP теряет популярность?

    AleksandrB
    @AleksandrB
    Совсем недавно вывел "Hello world"
    PHP не мода, php - классика, а классика никогда не умирает. Если умрет php, то умрут все остальные языки backend разработки потому что появится что-то такое, что сможет в разы превзойти пхп в простоте, скорости и удобстве, на данный момент что джава, что питон, что руби +- одинаковые, каждый подходит для своих целей. Тот же питон выбирают из-за простоты интеграции нейронных сетей, но если говорить не о узких, а о главных параметрах (функционал, скорость и тд) все популярные бэк языки более или менее одинаковые смотрите те же сухие графики.
    А о уменьшении вакансий - глупость несусветная. трын тут приведена статистика за 2018 год и обоих графиках по вакансиям лидирует в сравнении с java/python PHP, при том на первых двух пишут как бэкэнд, так и миллион других штук. А на втором графике и вовсе пхп опережает js (единственный язык в самой популярной сфере разработки).

    А вот если речь идет о реально крупных компаниях (amazon, google...) там как раз предпочитают python из-за выше упомянутой простоты интеграции нейросетей, а java из-за стабильной поддержки сверх высоких нагрузок.

    Меньше слушайте диванных экспертов, пхп предрекают смерть с 00-х годов, что то он слишком долго дергается для мертвеца.
    Ответ написан
    1 комментарий
  • Что можете рассказать о LinkedIn?

    @Stalinko Куратор тега Фриланс
    PHP'шник и фрилансер до мозга костей
    1. Лет 5
    2. Естественно
    3. Я не искал. Но мне пишут постоянно.
    4. Периодически прилетают вакансии с релокейшеном.
    5. Хантеров это не волнует. Какая вакансия у них есть, то вам и предложат.

    Зарегистрировался на LinkedIn просто чтобы было. Добавил в друзья всех коллег и знакомых. Заполнил профиль. Указал навыки. Коллеги мои навыки поаппрувили.

    Работу я никогда там не искал, но мне сразу же начали писать HR'ы. Потом они меня задолбали и я крупно написал в профиле, что работу не ищу и с зарплатой ниже $50/час вообще не пишите. Писать стали реже, но не перестали совсем. Сейчас раз в пару недель пишут. Вакансии очень хорошие. И релокейшен. И помощь с визой. И соц.пакет + авто + жильё. Куча всего. Уровень сеньёр фулл-стек.
    Ответ написан
    2 комментария
  • Как перестать говнокодить и принимать неверные архитектурные решения?

    miraage
    @miraage
    Старый прогер
    как писать поддерживаемый код?

    Если уж очень коротко, то соблюдать SOLID/GRASP. Мне понравился твит одного из авторов React Router:
    https://twitter.com/mjackson/status/1171524189850701825

    Most common mistake software developers make: putting stuff in the wrong place. Coupling responsibilities and concepts that should be kept separate.
    For me, this is 95% of software development. Just figuring out *where* things belong.


    Что гуглить, что учить?

    Фундаментальные знания, вроде вышеупомянутых SOLID/GRASP, паттерны (не только классические паттерны, но и вообще, общеизвестные решения определённых задач), базовые структуры данных. Фреймворки/библиотеки всегда будут приходить/уходить, что-то будет забываться. А фундаментальные знания всегда актуальны.

    Может литературу какую почитать посоветуете?

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

    Можно ли себя называть миддлом, если твой код говно?

    Не пытайтесь себя оценить. В каждой компании свои понятия миддла. А если кто-то 35 лет на лиспе кодил, а потом прыгнет на Angular - кто он, джун или сеньор?
    И, да, все мы в какой-то степени пишем говнокод. Если кто-то Вам доказывает, что он пишет супер чистый код - не слушайте.

    И ответ на главный вопрос.
    Как перестать говнокодить и принимать неверные архитектурные решения?

    Это невозможно. Все проекты, которые чуток сложнее CRUD-ов, рано или поздно обрастают говнокодом. Никто не пишет идеальный код. Код должен работать и решать проблемы бизнеса.
    Ответ написан
    6 комментариев
  • Готов поработать по ставке 0 в час. Где найти такую "работу"?

    @jamtuson
    Вы работаете не 0 в час, а вы работаете в минус компании, так как ваш код нужно проверять, обучать вас, давать задачи и это все время более опытного специалиста, который мог бы потратить его на выполнение своей работы за которую ему платят.

    Делайте портфолио и идите в компанию не на 0 в час, а на среднюю по рынку для стажера/juniora
    Ответ написан
    20 комментариев
  • Где найти фриланс студию начинающему программисту?

    saboteur_kiev
    @saboteur_kiev Куратор тега Карьера в IT
    software engineer
    , вроде фриланс студии, где может начинающий программист найти удаленную работу и участвовать в аутсорсинговых проектах.

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


    Само слово фриланс обозначает, что работу программист находит сам. Если для него кто-то другой находит работу, это означает, что он на кого-то работает. То есть обычные веб студии, обычная работа на работе.
    Ответ написан
    Комментировать
  • Где найти фриланс студию начинающему программисту?

    Zoominger
    @Zoominger
    System Integrator
    Подскажите пожалуйста, существует ли такой сервис, вроде фриланс студии, где может начинающий программист найти удаленную работу и участвовать в аутсорсинговых проектах.

    Понимаете, если такое место вдруг и появится, то ни один фрилансер даже под страхом расстрела не расскажет о нём другому фрилансеру.

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

    Сами-то подумайте, зачем им нужны неопытные программисты, которые пороху-то не нюхали. Что они напишут? За какие сроки? Таких контор нет.

    Но вы можете сами за пару лет набить портфолио, найти бесплатную стажировку, потом, может, найти место в веб-студии без оформления на 20 тысяч рублей в месяц, за год дорасти до джуна, потом пойти работать в нормальное место, параллельно набивая стату на фрилансе и вот пото-о-ом, лет через пять, когда у вас будет зарплата тысяч 40-50, возьмите и сделайте такую контору.
    Ответ написан
    2 комментария
  • Как оценивать сроки?

    php666
    @php666
    PHP-макака
    Прикольно звучат высказывания комментаторов в духе "если вы знакомы с проектом". Мне правда интересно, как в условиях современных монстроподобных корпоративных приложений можно быть "знакомым" с проектом, который, возможно, пилится не один год (пусть хотя бы даже от 3 лет) целой командой? Ни один человек, если он не единоличный автор этого проекта, не может быть настолько хорошо быть "знаком" с проектом, что бы чётко отвечать на вопросы в стиле "сколько времени займет поправить баг". Даже программисту среднего звена ясно, что совсем маленький баг может потянуть за собой чуть ли не фатальный коллапс архитектуры с последующим тотальным рефакторингом всего и вся.

    Невозможно в разработке планировать какие-либо сроки. Тут автор прав.

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

    Как оценивать сроки? Ответ очень простой - да никак не оценивать. Если работодатель построил такую систему, где менеджмент лезет с этими бюрократическими вопросами, не понимает, что разработка или фикс багов в проекте - это не типовая работа, как, например, класть кирпичи или валить лес - то это плохой работодатель. Или плохой менеджмент. А в целом - это компания-эксплуататор, из которой надо бежать.

    Я по себе знаю, когда от меня требовали сроки. Последний раз был вообще трешачок в одной московской компании - от меня требовали сроки на 2 день после назначения задачи на меня, при этом я вообще не понимал ничего в задаче - в её бизнес-логике, т.к. работал в этой компании от силы недели три. Через буквально несколько дней меня вызвали "на ковер", мол, почему так долго. Жалею, что прямо тогда не послал их прямым текстом на три известные буквы, а продолжил работать. Ничего хорошего из этого, конечно же, не вышло.
    Сейчас я работаю в таком месте, где ВООБЩЕ нет никакого понятия сроки, где разработка проектов в корпорации длится годами - IT работает не на внешнего заказчика, а на внутреннего - на саму же корпорацию. Последний проект, в котором я участвовал, занял около 2-х лет. И бОльшая часть была не программинг, а взаимодействие разных отделов, нахождение багов, форсмажорных ситуаций после запуска и т.д. Работать в таких условиях сплошное удовольствие. Никаких стрессов, никаких менеджеров, изображающих бурную деятельность.

    Если хочешь поседеть раньше времени - оставайся и слушай упреки менеджмента. Вместо спокойной работы - придумывай эти цифры сроков. Если нет - просто ищи адекватное место работы. Другого не дано.
    Ответ написан
    Комментировать
  • Как повысить свой архитектурный навык в программировании?

    Konata69lol
    @Konata69lol
    backend developer (php/go)
    Почитайте Рефакторинг Фаулера. Научит распознавать плохой код.
    Ответ написан
    Комментировать
  • Почему babel использует метод concat() вместо оператора "+"?

    0xD34F
    @0xD34F Куратор тега JavaScript
    ...или есть какой-то скрытый от меня смысл?

    Есть:

    It will handle cases with Symbol.toPrimitive correctly and throw correctly if template literal expression is a Symbol(). See babel/babel#5791.
    Ответ написан
    1 комментарий
  • ЯП для кросплатформенной разработки?

    Zoominger
    @Zoominger
    System Integrator
    Пока всему, что вы описали, удовлетворяет Qt.
    Ответ написан
    5 комментариев
  • Общение/переговоры с заказчиком занимают много времени, что делать?

    tema_sun
    @tema_sun
    Все рабочие чаты трекаю как работу.
    Ответ написан
    Комментировать
  • Общение/переговоры с заказчиком занимают много времени, что делать?

    nicepotato
    @nicepotato
    Дизайн всего (ну почти)
    Все разговоры оплачиваются как работа. Есть такие любители потрепаться, когда узнают о том, что разговоры тоже не бесплатные, быстро оптимизируют процесс и решают вопросы в чате без меня)) Выдавая потом готовое тз
    Ответ написан
    Комментировать
  • Общение/переговоры с заказчиком занимают много времени, что делать?

    kumaxim
    @kumaxim
    Web-программист
    У меня был подобный случай по одному из контрактов на Upwork. Из 20 часов потраченных на проект, 6 занимали переговоры в чате. Когда заказчик увилил скрины нашей переписки в трекере, предъявил мне мол "я тебе плачу только за код, почему ты трекаешь общение"? Опуская детали общения, клиент открыл диспут и Upwork встал на мою сторону.

    Поэтому, все время, что ты тратишь на задачи заказчика, не важно код это или общение с ним, включай в контракт.
    Ответ написан
    3 комментария
  • Общение/переговоры с заказчиком занимают много времени, что делать?

    mixail_fet
    @mixail_fet
    Дизайнер веб-интерфейсов
    Когда я работаю над каким-то проектом с почасовой оплатой, все разговоры, звонки и переписки - входят в тариф, иначе можно заниматься только 2 - 4 часа в день проектом, а остальное время потратить на разговоры.

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

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

    Ну и третье - у задачи должен быть только один или два посредника, если весь офис вам названивает целыми днями - значит конкретно в вашем случае, неправильно построена система разработки проекта.
    Ответ написан
    4 комментария
  • Общение/переговоры с заказчиком занимают много времени, что делать?

    @Stalinko Куратор тега Фриланс
    PHP'шник и фрилансер до мозга костей
    Всё время, которое ты тратишь на проект заказчика, должно быть оплачено заказчиком.
    Все длительные переговоры, естественно, тоже.
    Ответ написан
    3 комментария
  • Может ли быть API не как API?

    Robur
    @Robur
    Знаю больше чем это необходимо
    Что вы наваяете - то и будет вашим API. Хоть рандомные поля возвращайте.

    То что вы привели как аргументацию тимлида - выглядит так себе. Апи для "внутреннего" использования отличается не тем что оно не строгое и там можно развести бардак, а тем что его менять проще и быстрее.

    Однако делать так как говорит тимлид - возвращать {error: '...'} если ошибка, и {/*всякие данные в зависимости от запроса*/} если все ок - совершенно нормальная практика, и ничего плохого в этом нет. главное чтобы поле error не попалось в каком-то ответе, это по сути ваше единственное ограничение. Считайте что вы используете union types с детерминатором по наличию поля error, если вам хочется высоких формальностей и успокойтесь :)
    Ответ написан
    Комментировать
  • Может ли быть API не как API?

    @bkosun
    То, что API будет использоваться для внутренних целей не означает, что там может быть "бардак". Правильно было бы изначально договориться о формате, который будет использоваться в вашей команде.

    Если соглашений нет, или возникают споры - есть некоторые общепринятые стандарты:


    Так же посмотрите OpenAPI, RAML, API Blueprint
    Ответ написан
    Комментировать