PHP разработчик. Какие навыки востребованы?

Присоединюсь к предыдущему оратору - у меня сейчас команда из молодых и очень перспективных программистов-датасайенс. И вот они поголовно не видят за деревьями леса - один ушел в себя чтобы оптимизировать какую-то свою фигню для работы не за 30 минут, а за 25. То, что остальные компоненты трубы отрабатывают за часы (а все в куче - сутки) - его мало интересует. У него там задачка на какие-то кривые, он это знает, любит и умеет. Но вот бизнесу надо чтобы мы могли быстро взять новые данные от клиента и запихнуть в репорт - а это скучно, там надо буквально писать sed/awk и прочие штуки, которые в замках из слоновой кости не ценятся.

Так и живем.

Ох не надо соль на рану… За
for (T key : someMap.keySet()) {
value = someMap.get(key);

}
скоро буду с истерическим хохотом расстреливать…

Это классика, я такое проходил в середине 2000-х. Почему-то народу невдомек, что помимо алгоритмов было бы еще неплохо посмотреть в банальный API documentation, чтобы узнать что вместо someMap.get можно сделать entrySet. В случае скалы или питона - можно только горестно вздыхать, глядя на код модели с копипастой одного и того же метода в 13 разных местах.

В целом я делаю разделение между CS/DS и SD, для SD нужно понимать отличие ArrayList от LinkedList, но знать про балансировку AVL-tree необязательно. Но критично уметь делать декомпозицию системы, понимать SOLID (в случае с СУБД - ACID, а если у нас распределено все - то CAP theorem), писать код который можно протестировать и не умереть.

CS/DS же пусть занимаются своими алгоритмами, к написанию кода их допускать нельзя.

Кто с кем это сейчас разговаривает?
:lol:

Именно так!
Но какой вывод напрашивается из ваших верных слов?
Программирование, как отрасль, довольно молода, и сейчас находится на раннем промышленном развитии по аналогии с промышленной революцией конца 19-начала 20 веков. Еще три десятилетия назад большинство программистов были что-то вроде ремесленников. Каждый из них, в одиночку, мог создать продукт от идеи и алгоритмирования до финального тестирования. Конечно, и тогда работали команды, но это не было нынешней “конвейерной системой” в хорошем смысле этого термина.
Лично я входил в программирование в начале 90-х, начинал с ассемблера под DOS. Когда раздумывал поехать работать в Германию, то потенциальному работодателю вместо резюме просто отправил свою программу на ассемблере, тренажер азбуки Морзе с псевдографическим интерфейсом. При этом, exe-файл был размеров всего в 8 кбайт (не опечатка, именно кбайт). Через два дня получил оффер, но по семейным обстоятельствам так и не смог им воспользоваться.
Сейчас в крупные компании, выпускающие софт индустриальными методами, такой подход не требуется. Нужны работяги на конвейер, кодеры “индусы”.
Но вот вопрос, зачем такому кодеру знать паттерны проектирования, различные алгоритмы и т.п.? Кодер != инженер. Скорее, техник, котрый должен более-менее квалифицированно реализовывать задачи, точно сформулированные инженером.
Но и инженеру нет надобности помнить наизусть все паттерны и алгоритмы. Он должен знать и уметь найти подробности в справочнике. Задача инженера не зубрить, но думать.

Заседание сэров с моноклями в курительной комнате объявляю открытым!

Радуйтесь что не переписывают написанное предшественниками. :lol:

Для желающих покинуть курительную комнату звучит попутная песня :dance3:

Без наличия хоть каких-либо тестов.

А зачем тесты? Зря что-ли Михаил Портнов тестеров обучает? Пусть они тестят, зачем людей без работы оставлять?

А вы мне можете помочь - как мне найти работу PHP программером. Я в Portland area.
Какие технологии подтянуть, что бы найти работу по этому направлению?

Знание технологий:

Веб-технологии: PHP/MySQL, HTML/CSS
Верстка сайтов любой сложности.
CMS: Wordpress, Bitrix, Joomla.

Начал изучать Java, изучаю Andoid Studio.

Вряд ли кому-нибудь на форуме интересен список ваших умений. Поэтому не стоит замусоривать форум однотипными сообщениями.

Для поиска работы надо составить резюме и размещать его на профильных сайтах.

Спасибо!
Просто подумал, может удастся выйти на русскоязычную IT компанию.

Не слышал о таких.

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

Попытка-не пытка.

“Есть два стула …” - эту, чтоли? Нормальные там у вас собеседования, ровные!

у меня давно в россии спрашивали задачку - есть 2 переменных a и b. нужно поменять значения переменных не используя других переменных.

Смешно то, люди родившиеся до 1990 года как правило эту задачу решат моментально. Даже решат “найти установленный LSB в _int64 без цикла”. А вот милленниалы только джаваскрипт могут в основной массе.

а что вы против джаваскрипта имеете? я хоть и до 90 года, но JS, и на нем можно сделать все то же самое что и на Java и прости Господи C#, ну кроме может некоторых специфических задач, коих не более 1%. С использованием typescript он стал типизированным, async/await решают проблему синхронности. JS сейчас не просто показать скрыть поле в браузере, он по сложности не хуже той же джавы, ну только с памятью не умеет работать напрямую.
З.Ы. в JS кстати можно [a, b] = [b, a]
З.З.Ы. сейчас все тру джава девелоперы оскорбятся и будут метать в меня тапки :slight_smile: но все языки развиваются, сейчас даже на ПХП можно сделать любое по сложности веб приложение хоть REST, хоть Oracle, хоть MongoDB есть там и всякие паттерны и все прочее. Dependency Injection наверное нету только пока, но он и в C# появился недавно. а 7 пхп по производительности стал намного быстрее 5го. а уж ДЖИЭСик сейчас догоняет по популярности ту же джаву и другие языки и развивается семимильными шагами.

Я сейчас изучаю программирование под Android. А конкретно Android Studio. Думаете насколько это востребовано?

Прикольно.
Мой ответ:
a = a + b;
b = a - b;
a = b - a;

Для меня JavaScript раньше ассоциировался только с языком, который обрабатывается только в браузере пользователя…

Зоопарк технологий. Хорошо, что они бесплатные.