Какое Java-направление перспективнее?

  • Автор темы Dymytry
  • Дата начала
D

Dymytry

Коллеги,
пожалуйста поделитесь мнением относительно того в каком направлении java-разработок лучше искать работу.

Есть несколько типов организаций которые предлагают джава-работу. А именно:

1) банки - там порядок, но нет инета
2) интеграторы, эти все внедряют чего-то
3) веб-проекты в т.ч. игры. "высоконагруженность" - частое слово в таких вакансиях.
4) телеком - вообще не знаю что это. что вы думаете про телеком?
5) фирмы которые делают некий спецсофт на заказ, часто западные.
6) остальные, в т.ч. маленькие местные конторки - самое худшее из всех, на мой взгляд.

Теперь второй момент. Есть ряд технологий про которые я ничего не знаю, но как buzz-words они будят мое воображение:

1) noSQL databases
2) in memory data grids
3) cloud computing
4) параллельные вычисления - MapReduce какой-то
5) исп. других языков вместе с Джавой: Scala, Groovy etc

Отсюда вопросы:

1) Можете ли вы порекомендовать тип работодателя, который оптимален для развития?
2) Можете ли посоветовать технологии, изучение и работа с которыми интересна на перспективу?

(Ежели напишете примеры таких работодателей в МСК - то вам отдельное спасибо)
 

Kmet

Well-known member
25.05.2006
904
8
BIT
0
имхо, комфорт на работе больше зависит от конкретного работодателя и непосредственного начальника. комфорт я трактую в широком смысле, не только удобство стула и диагональ монитора=).
но, конечно, определенные тенденции имеются.

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

с investment банками - совсем другая песня. знакомыx инсайдеров там нет, но в целом считатся, что там хорошо: высокая зарплата, итересные проекты (трейдинг, датамайнинг, всякие шлюзы), шанс двинуть за бугор.

интеграторы: неинтересно, но может быть денежно. частые командировки, можно получить хорошие знания в предметной области
но, если хочешь в интеграторы надо смотреть сторону SAP'a, а не явы=)

я хз где в телекоме может применяться ява, скорее всего это билинг и аналитика. и тут все сильно зависит от того: на разработку или поддержку вакансия, собственная ли разработка, на продажу или только для внутренних нужд.

остальную классифкацию можно упросить:
продуктовая компания, делает собстывенные продукты и пытается их продать
аутсорс, разработка на заказ.

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

аутсорсинге: меньше шанс закиснуть на каком-нибдь долго играющем проекта, можно пощупать больше технологий, но стать в чем-нибудь экспертом сложнее. индуский, китайский, мексиканский код+)
 
D

Dymytry

Kmet, спасибо!

И еще:

1) Что с технологиями? Что может быть перспективно сейчас?
2) Часто вижу подобные строчки в вакансиях: "Опыт разработки серверных Java-приложений, работающих под высокой нагрузкой, понимание принципов оптимизации". Что имеется ввиду, как это освоить?
3) Можешь ли посоветовать книгу по быстродействию, алгоритмам и структурам памяти в Java, чтобы иметь представление об эффективности алгоритмов поиска, сортировок и тд. Такого глубокого как кнут конечно не хочется читать, и желательно чтобы с Java-примерами.
 

Kmet

Well-known member
25.05.2006
904
8
BIT
0
noSQL databases
in memory data grids
параллельные вычисления - MapReduce какой-то

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

cloud computing - на мой взгляд и с точки зрения ява программиста, это просто
еще один подход в хостингу ява приложений. да он стимулирует использование NoSQL решений,
но не так, что бы сильно изменить жизнь программиста.
хотя, если угадать какая из PaaS платформ выстрелит, то можно стать очень востребованным специалистом=)
лично мне, кажется salesforce.com перспективным.

Scala мне нравится, периодически вижу вакансии с ней.
не думаю, что бы один из jvm языков в обозримом будущем подвинул яву,
но зарабатывать на жизнь, на пример, на Scale уже можно.

2) Часто вижу подобные строчки в вакансиях: "Опыт разработки серверных Java-приложений, работающих под высокой нагрузкой, понимание принципов оптимизации". Что имеется ввиду, как это освоить?

в вакансиях это обычно ничего не значит. сотрудница отдела кадров видит, что все пишут, вот и она пишет.
открытых вакансий на проекты с действительно высокой нагрузкой совсем мало.
освоить, очень просто - надо поучаствовать: тут много подходов, много нюансов=)
а для собеседования достачтоно уметь профилировать и знать основные bottleneck'и
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!