Сколько платят Junior developerам?

Palych
Уже с Приветом
Posts: 13669
Joined: 16 Jan 2001 10:01

Сколько платят Junior developerам?

Post by Palych »

Можно как-то оценить на что можно рассчитывать на позиции Java Webservice Developer не синьерного уровня?
User avatar
Kirpidonych
Уже с Приветом
Posts: 4593
Joined: 31 Aug 2009 12:05
Location: Москва - Горновидовка - Пало Альтово - Озерки - Портланд\Сиэттл

Re: Сколько платят Junior developerам?

Post by Kirpidonych »

Palych wrote: 30 Jan 2019 01:08 Можно как-то оценить на что можно рассчитывать на позиции Java Webservice Developer не синьерного уровня?
glass door dot com -> salaries. + 20% от того, что там увидите
Обмен мнениями происходит в теплой и дружеской обстановке.
Palych
Уже с Приветом
Posts: 13669
Joined: 16 Jan 2001 10:01

Re: Сколько платят Junior developerам?

Post by Palych »

Kirpidonych wrote: 30 Jan 2019 02:06
Palych wrote: 30 Jan 2019 01:08 Можно как-то оценить на что можно рассчитывать на позиции Java Webservice Developer не синьерного уровня?
glass door dot com -> salaries. + 20% от того, что там увидите
Спасибо!
А почему +20% ?
User avatar
Kirpidonych
Уже с Приветом
Posts: 4593
Joined: 31 Aug 2009 12:05
Location: Москва - Горновидовка - Пало Альтово - Озерки - Портланд\Сиэттл

Re: Сколько платят Junior developerам?

Post by Kirpidonych »

Palych wrote: 30 Jan 2019 03:25
Kirpidonych wrote: 30 Jan 2019 02:06
Palych wrote: 30 Jan 2019 01:08 Можно как-то оценить на что можно рассчитывать на позиции Java Webservice Developer не синьерного уровня?
glass door dot com -> salaries. + 20% от того, что там увидите
Спасибо!
А почему +20% ?
там занижают по жизни и рынок щас требует кадры
Обмен мнениями происходит в теплой и дружеской обстановке.
XpoH
Уже с Приветом
Posts: 2123
Joined: 08 Nov 2013 22:33
Location: SFBA

Re: Сколько платят Junior developerам?

Post by XpoH »

https://www.teamblind.com и там спросите
https://www.levels.fyi если фаанг
Faland
Новичок
Posts: 57
Joined: 14 Sep 2011 16:48
Location: Boston

Re: Сколько платят Junior developerам?

Post by Faland »

Никуя себе... на такие суммы я даже готов поменять свой уютный кабинет с видом на озеро на опен-спейс. Даже Амазон смотрю сеньорам прилично платит.
mynameiszb
Уже с Приветом
Posts: 1663
Joined: 16 Jul 2009 14:18
Location: Uganda

Re: Сколько платят Junior developerам?

Post by mynameiszb »

Faland wrote: 30 Jan 2019 14:54 Никуя себе... на такие суммы я даже готов поменять свой уютный кабинет с видом на озеро на опен-спейс. Даже Амазон смотрю сеньорам прилично платит.
- Мой сосед говорит, что может за ночь пятьдесят раз!
- Ну и вы говорите, кто мешает

:lol:

Трое друзей за прошлые полгода работу меняли. Не все так радужно на рынке. Позиций хороших мало, ценник зажали, народ обычно рассказывает сказки про бонусы, которые ты получишь после 5-7 лет работы в компании. Может быть...
User avatar
Sergunka
Уже с Приветом
Posts: 34124
Joined: 03 Dec 2000 10:01
Location: Vladivostok->San Francisco->Los Angeles->San Francisco

Re: Сколько платят Junior developerам?

Post by Sergunka »

Palych wrote: 30 Jan 2019 01:08 Можно как-то оценить на что можно рассчитывать на позиции Java Webservice Developer не синьерного уровня?
У меня сейчас дите ищет подработку на лето internship ценник выше 100К пока не подымался - дело понятно идет о Долине и ее окрестностях.
"A patriot must always be ready to defend his country against his government." Edward Abbey
User avatar
valchkou
Уже с Приветом
Posts: 4185
Joined: 27 Apr 2011 03:43
Location: Сергели ->Chicago

Re: Сколько платят Junior developerам?

Post by valchkou »

Palych wrote: 30 Jan 2019 01:08 Можно как-то оценить на что можно рассчитывать на позиции Java Webservice Developer не синьерного уровня?
в чикаго за юниора дают 65-80к.
с 4мя годами и более менее продаваемыми скилзами будет уже 90-110 .
Далее уже у кого как пойдет.

Нормального сениора меньше чем за 140 найти сложно.
XpoH
Уже с Приветом
Posts: 2123
Joined: 08 Nov 2013 22:33
Location: SFBA

Re: Сколько платят Junior developerам?

Post by XpoH »

Faland wrote: 30 Jan 2019 14:54 Никуя себе... на такие суммы я даже готов поменять свой уютный кабинет с видом на озеро на опен-спейс. Даже Амазон смотрю сеньорам прилично платит.
а что останавливает-то?
ну да, платят.
User avatar
SUPER
Уже с Приветом
Posts: 581
Joined: 23 Jun 2016 19:49
Location: SFBA

Re: Сколько платят Junior developerам?

Post by SUPER »

Palych wrote: 30 Jan 2019 01:08 Можно как-то оценить на что можно рассчитывать на позиции Java Webservice Developer не синьерного уровня?
Palych, выяснили ли сколько платят?

Hi guys, когда я вижу в объявлении требование - Strong knowledge and expertise in data structures and algorithms, я прохожу мимо. Правильно ли я делаю? Конечно я когда то учил алгоритмы, но прям сейчас у меня в голове пусто- не смогу решить задачки.
User avatar
Sergunka
Уже с Приветом
Posts: 34124
Joined: 03 Dec 2000 10:01
Location: Vladivostok->San Francisco->Los Angeles->San Francisco

Re: Сколько платят Junior developerам?

Post by Sergunka »

SUPER wrote: 03 Feb 2019 20:36
Palych wrote: 30 Jan 2019 01:08 Можно как-то оценить на что можно рассчитывать на позиции Java Webservice Developer не синьерного уровня?
Palych, выяснили ли сколько платят?

Hi guys, когда я вижу в объявлении требование - Strong knowledge and expertise in data structures and algorithms, я прохожу мимо. Правильно ли я делаю? Конечно я когда то учил алгоритмы, но прям сейчас у меня в голове пусто- не смогу решить задачки.
На самом деле неправильно так как скорее всего попросят чего нибудь закодить на hakerrank или leetcode так или иначе скил довольно нужный просто надо потренироваться несколько месяцев.
"A patriot must always be ready to defend his country against his government." Edward Abbey
User avatar
SUPER
Уже с Приветом
Posts: 581
Joined: 23 Jun 2016 19:49
Location: SFBA

Re: Сколько платят Junior developerам?

Post by SUPER »

Sergunka wrote: 03 Feb 2019 20:57
SUPER wrote: 03 Feb 2019 20:36
Palych wrote: 30 Jan 2019 01:08 Можно как-то оценить на что можно рассчитывать на позиции Java Webservice Developer не синьерного уровня?
Palych, выяснили ли сколько платят?

Hi guys, когда я вижу в объявлении требование - Strong knowledge and expertise in data structures and algorithms, я прохожу мимо. Правильно ли я делаю? Конечно я когда то учил алгоритмы, но прям сейчас у меня в голове пусто- не смогу решить задачки.
На самом деле неправильно так как скорее всего попросят чего нибудь закодить на hakerrank или leetcode так или иначе скил довольно нужный просто надо потренироваться несколько месяцев.
Понял.. у меня нет выхода, придется тренироваться... где бы столько времени взять, на поиск работы тоже много времени уходит
Palych
Уже с Приветом
Posts: 13669
Joined: 16 Jan 2001 10:01

Re: Сколько платят Junior developerам?

Post by Palych »

SUPER wrote: 03 Feb 2019 20:36 Palych, выяснили ли сколько платят?

Hi guys, когда я вижу в объявлении требование - Strong knowledge and expertise in data structures and algorithms, я прохожу мимо. Правильно ли я делаю? Конечно я когда то учил алгоритмы, но прям сейчас у меня в голове пусто- не смогу решить задачки.
Как я понял - от места зависит. Вроде прикинул по приведенным ссылкам...

Раз пошла такая пьянка - задам совсем глупый вопрос:
А что ноне подразумевают под data structures and algorithms?
User avatar
valchkou
Уже с Приветом
Posts: 4185
Joined: 27 Apr 2011 03:43
Location: Сергели ->Chicago

Re: Сколько платят Junior developerам?

Post by valchkou »

Palych wrote: 04 Feb 2019 15:57 А что ноне подразумевают под data structures and algorithms?
на прмере java
data structures - map, set, list, q их имплементации, как устроены внутри и какие лучше использовать на примере задач.
algorithms - тут обычно сводится к sort, filter, find, insert применимо к data structures. Big 0 данных алгоритмов. например какой Big 0 на insert/get в HashMap, TreeMap или ArrayList.

мне в свое время помогла эта книжка Data Structures and Algorithms in Java by Mitchell Waite and Robert LaFore
http://web.fi.uba.ar/~jvillca/hd/public ... dition.pdf
Не смотрите что книжка старая для мид/жун вполне достаточно и написано понятно для чайника.

Для сениора нужно понимание как работать с concurrency и multy-core.
И тут появляются такие интересные структуры как blockingQ, ConcurrentMap, SkipList.
Aggregate, Sort, Filter, Modify используя stream и parallel stream

Например нельзя вставлять в ArrayList в одном потоке, а в другом в это же время по нему ходить, будет выброшен ConcurrentModEx.
Соответственно нужно понимать как решать такие задачи. Книг не посоветую. Возможно они есть но я не читал.

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

Вот была у меня задача, надо было найти какие то элементы в 2-х массивах на сколько то там сотни тыс елементов и занимает не более 300 millisec.
Я пишу код который с виду О(N^2). Интервьюер на том конце хочет О(N). Я это понимаю но времени подумать и выдать то что он хочет просто нет.
Он запускает свой код и у него 200ms, запускает мой и с удивлением получает 95 ms. Все тесты зеленые.
Интервью я не прошел, потому как не выдал О(N).
Я догадываюсь что решение типа стандартное и каждый кто готовился к таким задачам выдаст его не задумываясь.

итого нужны 3 скилза для успешного прохождения интервью
- знать data structures and algorithms
- уметь применять их в работе
- уметь применять их в задачах на интервью
User avatar
SUPER
Уже с Приветом
Posts: 581
Joined: 23 Jun 2016 19:49
Location: SFBA

Re: Сколько платят Junior developerам?

Post by SUPER »

valchkou wrote: 04 Feb 2019 17:55
Palych wrote: 04 Feb 2019 15:57 А что ноне подразумевают под data structures and algorithms?
на прмере java
data structures - map, set, list, q их имплементации, как устроены внутри и какие лучше использовать на примере задач.
algorithms - тут обычно сводится к sort, filter, find, insert применимо к data structures. Big 0 данных алгоритмов. например какой Big 0 на insert/get в HashMap, TreeMap или ArrayList.

мне в свое время помогла эта книжка Data Structures and Algorithms in Java by Mitchell Waite and Robert LaFore
http://web.fi.uba.ar/~jvillca/hd/public ... dition.pdf
Не смотрите что книжка старая для мид/жун вполне достаточно и написано понятно для чайника.

Для сениора нужно понимание как работать с concurrency и multy-core.
И тут появляются такие интересные структуры как blockingQ, ConcurrentMap, SkipList.
Aggregate, Sort, Filter, Modify используя stream и parallel stream

Например нельзя вставлять в ArrayList в одном потоке, а в другом в это же время по нему ходить, будет выброшен ConcurrentModEx.
Соответственно нужно понимать как решать такие задачи. Книг не посоветую. Возможно они есть но я не читал.

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

Вот была у меня задача, надо было найти какие то элементы в 2-х массивах на сколько то там сотни тыс елементов и занимает не более 300 millisec.
Я пишу код который с виду О(N^2). Интервьюер на том конце хочет О(N). Я это понимаю но времени подумать и выдать то что он хочет просто нет.
Он запускает свой код и у него 200ms, запускает мой и с удивлением получает 95 ms. Все тесты зеленые.
Интервью я не прошел, потому как не выдал О(N).
Я догадываюсь что решение типа стандартное и каждый кто готовился к таким задачам выдаст его не задумываясь.

итого нужны 3 скилза для успешного прохождения интервью
- знать data structures and algorithms
- уметь применять их в работе
- уметь применять их в задачах на интервью
Спасибо за очередной познавательный пост!
User avatar
Sergunka
Уже с Приветом
Posts: 34124
Joined: 03 Dec 2000 10:01
Location: Vladivostok->San Francisco->Los Angeles->San Francisco

Re: Сколько платят Junior developerам?

Post by Sergunka »

Мой старший сейчас ищет работу на лето. Сегодня делал задание на https://www.hackerrank.com/

Дали модификацию задачки найти самый длинный полиндром в строке. Базовое решение скомуниздили с leetcode
https://leetcode.com/problems/longest-p ... /solution/

Code: Select all

public String longestPalindrome(String s) {
    if (s == null || s.length() < 1) return "";
    int start = 0, end = 0;
    for (int i = 0; i < s.length(); i++) {
        int len1 = expandAroundCenter(s, i, i);
        int len2 = expandAroundCenter(s, i, i + 1);
        int len = Math.max(len1, len2);
        if (len > end - start) {
            start = i - (len - 1) / 2;
            end = i + len / 2;
        }
    }
    return s.substring(start, end + 1);
}

private int expandAroundCenter(String s, int left, int right) {
    int L = left, R = right;
    while (L >= 0 && R < s.length() && s.charAt(L) == s.charAt(R)) {
        L--;
        R++;
    }
    return R - L - 1;
}
Это для примера что надо ожидать по-первоходу. Если что будет еще запощу :D
"A patriot must always be ready to defend his country against his government." Edward Abbey
User avatar
Kirpidonych
Уже с Приветом
Posts: 4593
Joined: 31 Aug 2009 12:05
Location: Москва - Горновидовка - Пало Альтово - Озерки - Портланд\Сиэттл

Re: Сколько платят Junior developerам?

Post by Kirpidonych »

Обмен мнениями происходит в теплой и дружеской обстановке.
Palych
Уже с Приветом
Posts: 13669
Joined: 16 Jan 2001 10:01

Re: Сколько платят Junior developerам?

Post by Palych »

valchkou wrote: 04 Feb 2019 17:55 Вот была у меня задача, надо было найти какие то элементы в 2-х массивах на сколько то там сотни тыс елементов и занимает не более 300 millisec.
Я пишу код который с виду О(N^2). Интервьюер на том конце хочет О(N). Я это понимаю но времени подумать и выдать то что он хочет просто нет.
Он запускает свой код и у него 200ms, запускает мой и с удивлением получает 95 ms. Все тесты зеленые.
Интервью я не прошел, потому как не выдал О(N).
Я догадываюсь что решение типа стандартное и каждый кто готовился к таким задачам выдаст его не задумываясь.

итого нужны 3 скилза для успешного прохождения интервью
- знать data structures and algorithms
- уметь применять их в работе
- уметь применять их в задачах на интервью
С применением на интервью понятно. Спасибо!
Мне любопытно насколько это применяется в работе. Особенно О(N^2), О(N)...
Неужели сейчас что-то оптимизируют, не решают проблемы добавлением мощности?
Или это скорее хотелки нанимающих, типа попытки придать налет элитности команде?
(не хотелось бы устраивать очередную свару и меряние разными признаками, но интересно увидеть реальное положение дел)
User avatar
Sergunka
Уже с Приветом
Posts: 34124
Joined: 03 Dec 2000 10:01
Location: Vladivostok->San Francisco->Los Angeles->San Francisco

Re: Сколько платят Junior developerам?

Post by Sergunka »

Palych wrote: 05 Feb 2019 04:34
valchkou wrote: 04 Feb 2019 17:55 Вот была у меня задача, надо было найти какие то элементы в 2-х массивах на сколько то там сотни тыс елементов и занимает не более 300 millisec.
Я пишу код который с виду О(N^2). Интервьюер на том конце хочет О(N). Я это понимаю но времени подумать и выдать то что он хочет просто нет.
Он запускает свой код и у него 200ms, запускает мой и с удивлением получает 95 ms. Все тесты зеленые.
Интервью я не прошел, потому как не выдал О(N).
Я догадываюсь что решение типа стандартное и каждый кто готовился к таким задачам выдаст его не задумываясь.

итого нужны 3 скилза для успешного прохождения интервью
- знать data structures and algorithms
- уметь применять их в работе
- уметь применять их в задачах на интервью
С применением на интервью понятно. Спасибо!
Мне любопытно насколько это применяется в работе. Особенно О(N^2), О(N)...
Неужели сейчас что-то оптимизируют, не решают проблемы добавлением мощности?
Или это скорее хотелки нанимающих, типа попытки придать налет элитности команде?
(не хотелось бы устраивать очередную свару и меряние разными признаками, но интересно увидеть реальное положение дел)
Для junior-a это больше проверить образование понятно сильно рыть или спрашивать проекты где было критично О нотайшин никто не будет. Но спросить спросят так как обычно предполагается, что курс структуры данных и алгоритмы имеряк прослушал.

Вообще в яве довольно много чего оптимизируют если серьезный бекенд и сейчас набирает популярность направление IoT там, что не временной ряд так надо оптимизировать, аггрегировать и вообще копать разными лопатами, чтоб уложиться в норматив :D
"A patriot must always be ready to defend his country against his government." Edward Abbey
User avatar
Sergunka
Уже с Приветом
Posts: 34124
Joined: 03 Dec 2000 10:01
Location: Vladivostok->San Francisco->Los Angeles->San Francisco

Re: Сколько платят Junior developerам?

Post by Sergunka »

Palych,

извините за вопрос, Вы для себя позицию приглядываете?
"A patriot must always be ready to defend his country against his government." Edward Abbey
Palych
Уже с Приветом
Posts: 13669
Joined: 16 Jan 2001 10:01

Re: Сколько платят Junior developerам?

Post by Palych »

Sergunka wrote: 05 Feb 2019 05:14 Palych,

извините за вопрос, Вы для себя позицию приглядываете?
Приглядываю какую позицию для себя приглядывать...
User avatar
Sergunka
Уже с Приветом
Posts: 34124
Joined: 03 Dec 2000 10:01
Location: Vladivostok->San Francisco->Los Angeles->San Francisco

Re: Сколько платят Junior developerам?

Post by Sergunka »

Palych wrote: 05 Feb 2019 06:37
Sergunka wrote: 05 Feb 2019 05:14 Palych,

извините за вопрос, Вы для себя позицию приглядываете?
Приглядываю какую позицию для себя приглядывать...
Вот же блин. Тогда потихоньку на leetcode и hakerrank плюс пару тройку книжек по типо как пройти интервью с примерами на Яве. Слава богу тренд на яве еще держится если по-молодости программировали на С то гляньте в сторону Go там сейчас пруха в микросервисах.
"A patriot must always be ready to defend his country against his government." Edward Abbey
User avatar
valchkou
Уже с Приветом
Posts: 4185
Joined: 27 Apr 2011 03:43
Location: Сергели ->Chicago

Re: Сколько платят Junior developerам?

Post by valchkou »

Palych wrote: 05 Feb 2019 04:34 С применением на интервью понятно. Спасибо!
Мне любопытно насколько это применяется в работе. Особенно О(N^2), О(N)...
Практически везде где нужно массажировать данные, особенно если они приходят из разных датасурсов.

Есть у вас массив схожих объектов типа A(id, p1, p2) и типа B(id, p3, p4) на выходе нужно получить массив С(id, p1, p2, p3, p4).
задача в чем - берем объект А из массива 1, находи его в массиве 2 и мержим. Можно это сделать за О(N^2), а можно массив 2 перегнать в Map or Set и получить О(N).

из той же темы - есть у вас массив и периодически требуется проверять содержится в нем тот или иной элемент contains(). Например массив исключений.
Решение такое же как в примере выше, вместо О(N) получаем О(1)

Или например приходит некий стрим данных из кафки или рабит, объект описывающий некое действие, с датой его начала и окончания. Action(id, name, ..., startTs, endTs ),
Вам нужно считать количество действий по их продолжительности округленной до минуты roundToMinute(endTs- startTs)
duration minutes | count
1 | 15246445
2 | 56484746
.....
N | xxxxx
(похожая задача на построение Scatter Chart, например наиболее посещаемые части экрана, распределение посетителей по возрасту, распределение объектов по весу)
Тут можно заюзать HashMap для быстрого нахождения счетчика за O(1),
но если данные нужно периодически скидывать куда то в отсортированном виде то можно взять TreeMap, которая в свою очередь является имплементацией Red-Black Tree c O(LogN)
Вот вам и придется оценить будет ли эффективней периодически копировать и сортировать HashMap или иметь TreeMap.

И да все эти задачи не имеют ничего общего с нахождением палиндрома, вычислением фибоначчи или перевертыванием строки.
Palych
Уже с Приветом
Posts: 13669
Joined: 16 Jan 2001 10:01

Re: Сколько платят Junior developerам?

Post by Palych »

valchkou wrote: 05 Feb 2019 17:27
Palych wrote: 05 Feb 2019 04:34 С применением на интервью понятно. Спасибо!
Мне любопытно насколько это применяется в работе. Особенно О(N^2), О(N)...
Практически везде где нужно массажировать данные, особенно если они приходят из разных датасурсов.

Есть у вас массив схожих объектов типа A(id, p1, p2) и типа B(id, p3, p4) на выходе нужно получить массив С(id, p1, p2, p3, p4).
задача в чем - берем объект А из массива 1, находи его в массиве 2 и мержим. Можно это сделать за О(N^2), а можно массив 2 перегнать в Map or Set и получить О(N).

из той же темы - есть у вас массив и периодически требуется проверять содержится в нем тот или иной элемент contains(). Например массив исключений.
Решение такое же как в примере выше, вместо О(N) получаем О(1)
Понятно. Получается, если выражаться крестьянским языком, знание алгоритмов и структур - это знание коллекций.
Плюс - возможность выпендриться знаниями математических формул...

Return to “Работа и Карьера в IT”