Программирование, Путешествия, Покер

Последний пост:17 марта
803
Статистика
Всего постов
3223
839,294 просмотров
Новых постов
+0
1 в день
Лучшие посты автора
27.09.2022 +233
21.12.2019 +196
22.02.2023 +169
04.01.2023 +166
13.07.2019 +154
Лучшие посты читателей
inpace +111
justpus7 +98
vsobakekot +88
Gtrdy +85
s4ekotilla +78
Самые активные читатели
1 8 28 29 30 31 50 162
  • Цитата (Jack @ 10.8.2017)
    в Чехии 1500 вроде копейки, нет?


    это почти 1200 чистыми. если один, на жизнь вполне хватит
    10/27
    Ответить Цитировать
    0
  • Джун джуну рознь. Одно дело когда ищет работу человек, закончивший некие онлайн/оффлайн курсы. Тогда он идет по низшей границе зп в 25-30к рублей. Другое дело когда приходит джун либо с опытом работы(нормальным) в 3-6 месяцев, либо с кодом реальных, сложных проектов(которые, например, как курсовые в универе выполняли, либо просто сайд-проект), про которые они адекватно могут побеседовать. Тогда они спокойно могут претендовать и на 50к и на больше.
    1/33
    Ответить Цитировать
    1
  • Цитата (faLekGG @ 10.8.2017)
    strkk, на сколько по твоему мнению может рассчитывать солидный джуниор?

    Чуть выше очень правильно заметили, что джуниор джуниору рознь.
    В целом, на мой взгляд, лучше потратить чуть больше времени на поиск и подготовку к собеседованию (написние своего проекта с кодом на том же гитхабе, к примеру), чем сразу идти на более низкую зп. Такой вариант более плюсовый на дистанции.
    В целом, я думаю, что толковый может вполне рассчитывать минимум на 45к+ (условно, $800).
    247/1047
    Ответить Цитировать
    0
  • Где лучше всего жить и работать разработчику


    14/27
    Ответить Цитировать
    -1
  • Цитата (strkk @ 10.8.2017)
    Затрудняюсь ответить, т.к. я никуда не переезжал и ситуацию с трудоустройством в других регионах могу оценить лишь глянув на хедхантере вакансии.
    Мне кажется, что лучше начинать у себя на месте и ехать в СПб/Москву уже имея опыт работы. Так плюсовее, на мой взгляд.


    В моем регионе есть вакансии только php, js и 1С. И мне кажется так во многих.
    Цитата
    Где лучше всего жить и работать разработчику


    Странная статистика. В первом исследовании средняя зарплата программиста в Москве 60к и стоимость аренды жилья 60к. Во втором непонятно чему равны расходы на жизнь. Статистика яндекса вообще выдает, что средняя зарплата java программиста в СПб выше чем в Москве. Но вообще я об этом и задумывался, что разница в зарплатах между СПб и Москвой маленькая, при этом жизнь в СПб дешевле.
    5/14
    Ответить Цитировать
    0
  • зарплата джуна не сильно важна, надо стремиться как можно быстрее вырасти.
    ну и если сравнивать где сколько зарабатывают, то не надо ограничиваться странами СНГ, давай статистику по США, Швейцарии, Германии и Франции тогда уж :)
    16/24
    Ответить Цитировать
    6
  • spaun, там по ссылке есть статистика разных городов. Правда, сам авторы пишут, что она "средняя по больнице" и годится лишь для приблизительной оценки. Офк, далеких выводов из нее делать не стоит.

    Jumpman, javascript вполне себе неплохой вариант для изучения. Я бы сказал, с прицелом на релокацию или фриланс - очень хороший.
    248/1047
    Ответить Цитировать
    0
  • средняя по больнице - неплохая оценка, в случае, когда средние значительно отличаются. из этого можно сделать какие-то выводы. а если средние не различаются, то это не значит ничего)
    17/24
    Ответить Цитировать
    0
  • Про биг дату и обучение.

    Биг дата это довольно бурно развивающееся направление и я считаю, что мне повезло оказаться в этом тренде. В принципе, при поиске вакансий я даже как-то не рассматривал епам до тех пор, пока не узнал о возможности влиться в этот поток. Дело в том, что порог вхождения туда довольно высок. Основные недостатки для человека с улицы заключаются в том, что:
    - Почти что нереально создать свое приложение, чтобы получить какой-то опыт. Даже если не брать в расчет тот факт, что большинство приложений работает в распределенном кластере из многих компьютеров, то даже запуск "песочницы" с готовым дистрибутивом на домашнем компе требует достаточно хорошего, по обывательским меркам, железа и комплексных знаний.
    - Слишком специфичные знания и их большой объем. Для изучения энтерпрайзного стека технологий нужно куда меньше времени. Не говоря уже о том, что некоторые вещи написаны на Scala, которая сама по себе является достаточно трудным языком для изучения с нуля.

    Но направление стоящее, что иллюстрируют картинки из гугла.
    Big_Data_Market_Forecast.png


    Недавно я был на презентации для новых сотрудников, где рассказали, что биг дату к нам в СПб "завезли" из Белоруссии, открыв здесь отдел. Людей найти трудно, поэтому набираются разработчики на Java/Scala/Python, которым интересно это направление. Первое время, после прохождения адаптационных процедур, проходится внутренний курс по биг дате из 5 модулей. На каждый из них отводится по неделе. Выполненные задания заливаются на обучающий портал, где ментор (он дается каждому ученику) проверяет решение, дает фидбек и отвечает на вопросы. По итогам каждого модуля проводится небольшой тест (называется скринингом) с кем-то из коллег (который не знаком с учеником).
    Сам курс состоит из видео и презентаций, где довольно поверхностно освещаются основные аспекты выбранной темы. Продолжительность курса оценивается в 160 часов. Помимо него также предполагается, что ученик будет более глубоко изучать технологию. На скрининге могут задавать вопросы о тех вещах, которые не освещаются в курсе. Об этом заранее предупреждают, также есть примерный список вопросов для самопроверки. В конце каждого модуля есть и онлайн тест + финальный тест по содержанию всего курса.

    Более детально про вещи, которые освещаются в курсе.

    1. Hadoop. Концепция MapReduce, устройство HDFS (распределенной файловой системы), YARN (ресурсный менеджер хадупа). Домашние задания состоят из трех MapReduce задач, сдобренных тестами и скриптами для запуска.
    С ними я успешно справился, а также неделю назад прошел скрининг по этой теме. Как мне показалось, это самая сложная часть курса. Слишком много всего нового, приходилось задерживаться на работе, чтобы сдать все в нужный срок.

    2. Hive. Это созданная фейсбуком технология, которая позволяет с помощью SQL-подобного языка писать запросы для обработки данных. Запрос компилируется и преобразуется в цикл map-reduce задач, на выходе которого получаются нужная выборка данных. Это полезно для людей, которые хорошо знают SQL, но не достаточно хорошо знакомы с написанием своих систем обработки данных.
    Полностью все возможности SQL не поддерживаются, но можно добавлять свои функции, написанные на джаве.
    Тут в качестве дз надо написать несколько запросов для анализа данных по полетам в США за 2007 год (5 самых загруженных аэропортов, перевозчик с самым большим количеством отмененных рейсов и т.п.)
    Скрининг по этой теме мне предстоит завтра.

    3. Различные "вспомогательные" системы, а именно Sqoop, Flume, Kafka и ZooKeeper. Про эти и следующие модули рассказать подробнее смогу позже, когда сдам их. Домашние задания довольно легкие, два из них я успел сделать за сегодняшний день.

    4 и 5 модули посвящены Apache Spark и Spark Streaming. Все, что мне известно - там надо писать на Scala.

    По идее, после окончания курса ученика определяют в какой-то проект. Причем для попадания в проект иногда нужно проходить еще одно собеседование непосредственно с заказчиком.
    По факту же проектные собеседования начинаются спустя буквально пару недель. Сегодня со мной связывался какой-то архитектор из Лондона, который предлагал пойти к ним в команду, которая будет стартовать новый проект, связанный с машинным обучением какой-то штуки. Я вежливо дал понять, что мне это не очень интересно. Главным мотивом был тот факт, что реализовывать это все предполагается, по большей части, на питоне. У меня и так довольно длинный список вещей для изучения и добавлять туда совершенно новый для меня язык (Python) я считаю лишним.
    На завтра назначили собеседование из другого проекта. Посмотрим что они расскажут.

    Пока я писал текст выше, заметил, что перечислил около десятка различных технологий, специфичных именно для направления Big Data. А ведь еще пара десятков технологий осталась за кадром.

    Еще я сходил на презентацию для новых сотрудников. С удивлением узнал, что епам начинался в Белоруссии (я думал это чисто американская компания). Отдельно стоит заметить про релокацию. Было указано, что для того, чтобы подавать заявку на релокацию в страну Х, надо:
    - Иметь полтора года стажа в компании.
    - Уровень английского B2. Мне на внутреннем экзамене по английскому записали уровень B2+.
    - Уровень L3, что соответствует синьор уровню.
    - Интерес со стороны какого-либо проекта в целевом офисе/стране.

    Интересный вопрос насчет зарплаты при релокации. Кто-то упоминал, что она не меняется(!) при релокации, что, на мой взгляд, довольно странно. Правда, инфа непроверенная, но мне пока рано об этом задумываться.

    Ну и да, по окончании презентации вручили кубик-антистресс, который, по совместительству, является и принимателем решений :)
    8ApUiIn.jpg



    P.S. Обязательно пишите, если какие-то темы стоит осветить более подробно. В целом, чем дальше в лес - тем больше инфы про биг дату, которой я смогу поделиться с вами.
    249/1047
    Ответить Цитировать
    23
  • Скорее всего перевозят сотрудников по визе L1 в США, если требуют полтора года (хотя достаточно одного) и нет жесткого ограничения по зарплате снизу.
    По этой визе есть нюанс, что трансфернуться в другую компанию нельзя + работодатель может не сделать грин карту (тогда придется рано или поздно вернуться домой).
    Я не знаю, какая репутация у епама, но обычно это дает компании хорошие рычаги для превращения работников в рабов, которые трудятся за копейки, в обмен на мнимую грин карту через ндцать лет :)
    P.S. самый первый линк в гугле: https://www.glassdoor.com/Reviews/Employee-Review-EPAM-RVW11074504.htm
    18/24
    Ответить Цитировать
    2
  • spaun, Да, для США ситуация именно такая. Насколько мне известно, раньше требовался всено год стажа, а не полтора. Возможно, его увеличили для уменьшения утечки кадров за границу или из-за ограничений в других странах.

    Ну и стоит заметить, что релокация != переезд в США. Хотя по данным за прошлый год, которые нам привели, около половины релоцирующихся из СПб двинуло в штаты (а один в Мексику)
    250/1047
    Ответить Цитировать
    1
  • strkk, спасибо за ссылки на полезные сайты, как раз искал, где бы закрепить/повторить основы - codingbat.com самое то!
    Как думаешь, на собеседовании лучше писать (если до этого дойдет) прямолинейный удобочитаемый код или можно применять "хитрые" решения (как показатель нестандартного мышления), как, например, решение этой задачки:

    Цитата
    Return true if the string "cat" and "dog" appear the same number of times in the given string.

    catDog("catdog") → true
    catDog("catcat") → false
    catDog("1cat1cadodog") → true


    public boolean catDog(String str) {
    int icat = 0, idog = 0, ccat = 0, cdog = 0, e = str.length(), temp;
    for (int i = (icat = str.contains("cat") ? str.indexOf("cat") : e)
    < (idog = str.contains("dog") ? str.indexOf("dog") : e) ? icat : idog; i < e;
    i = (icat = str.indexOf("cat", ++i) < 0 ? e : str.indexOf("cat", i))
    < (idog = str.indexOf("dog", i) < 0 ? e : str.indexOf("dog", i)) ? icat : idog)
    temp = i == icat ? ccat++ : cdog++;
    return ccat == cdog;
    }
    1/10
    Ответить Цитировать
    -1
  • Цитата (GAnd @ 15.8.2017)
    strkk, спасибо за ссылки на полезные сайты, как раз искал, где бы закрепить/повторить основы - codingbat.com самое то!
    Как думаешь, на собеседовании лучше писать (если до этого дойдет) прямолинейный удобочитаемый код или можно применять "хитрые" решения (как показатель нестандартного мышления), как, например, решение этой [


    Выскажу свое мнение. Лучше писать понятный и простой код, пусть он и не будет самым эффективным. То что написано у тебя, к сожалению непонятный и скорее всего неэффективный код.
    Можешь просто словами объяснить, как это можно было бы сделать эффективнее. Этого может быть уже достаточно :)
    19/24
    Ответить Цитировать
    2
  • Цитата (spaun @ 15.8.2017)
    ... То что написано у тебя, к сожалению непонятный и скорее всего неэффективный код.


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


    Цитата
    Return the number of times that the string "hi" appears anywhere in the given string.

    countHi("abc hi ho") → 1
    countHi("ABChi hi") → 2
    countHi("hihi") → 2

    public int countHi(String str) {
    int result = 0;
    for (int i = str.indexOf("hi"); i >= 0; i = str.indexOf("hi", ++i))
    result++;
    return result;

    которое однозначно эффективнее стандартного решения
    Цитата
    public int countHi(String str) {
    int count = 0;
    for (int i = 0; i < (str.length() - 1); i++)
    if (str.substring(i, i+2).equals("hi")) count++;
    return count;
    }

    хотя бы потому, что отсутствуют накладные расходы на создание нового объекта подстроки при каждой итерации.
    2/10
    Ответить Цитировать
    0
  • Компилятор сейчас обиделся.
    18/38
    Ответить Цитировать
    1
  • Цитата (GAnd @ 16.8.2017)
    Не спорю, так и есть )) Это, так сказать, гипертрофированный пример, который родился из спортивного интереса после решения предыдущей задачи

    Ну, напиши отдельную функцию, которая считает число вхождений строки в заданную. А потом вызови 2 раза её, и сравни результаты. Это было бы намного понятнее + отсутствует дублирование кода.
    К слову, один из эффективных алгоритмов для подсчета вхождений произвольной строки, это KMP: https://en.wikipedia.org/wiki/Knuth–Morris–Pratt_algorithm который в java скорее всего не реализован :) В данной задаче это явно overkill.
    20/24
    Ответить Цитировать
    1
  • Цитата (БоевойСлон @ 16.8.2017)
    Компилятор сейчас обиделся.


    А чего он такой обидчивый? ))
    Специально сейчас замерил - "классический" вариант выполняется почти в 10 раз медленнее, 331926 мкс против 34083 мкс на 1кк итераций (винда, java 8)

    Или речь не об этом?
    Сообщение отредактировал GAnd - 16.8.2017, 15:48
    3/10
    Ответить Цитировать
    0
  • spaun, вопрос был совсем не в том, как в данном конкретном случае сделать эффективнее, а в том, стоит ли "мувить" в тестовых задачках.
    Впрочем, по реакции присутствующих можно уже сделать вывод, что не стоит))
    4/10
    Ответить Цитировать
    0
  • Мне кажется, что при нормально выставленных параметрах оптимизации (типа Release mode) компилятор не будет каждый раз создавать одну и ту же подстроку.
    Хотя я больше сужу по C++, может в Java это по-другому работает.
    19/38
    Ответить Цитировать
    0
  • Цитата (БоевойСлон @ 16.8.2017)
    Мне кажется, что при нормально выставленных параметрах оптимизации (типа Release mode) компилятор не будет каждый раз создавать одну и ту же подстроку.
    Хотя я больше сужу по C++, может в Java это по-другому работает.


    Да, работает это немного по-другому.
    Во-первых, виртуальная машина java - это все-таки интерпретатор, хотя современные реализации настолько хорошо оптимизируют выполнение кода, что скорость выполнения программы на разогретой java-машине не уступает нативному коду.
    Во-вторых, сама реализация класса String в java не позволяет изменить существующую строку - при любом изменении строки создается новый объект (т.е. выделяется память, копируются данные и т.д.) и старой переменной присваивается ссылка на новый объект, в то время как старый "теряется" (но, в отличии от С++, в java это нормально) и со временем будет уничтожен сборщиком мусора. Естественно, такие телодвижения в цикле не лучшим образом сказываются на времени выполнения.
    Но это не значит, что в java все плохо со строками - есть другие классы, в которых все с этим хорошо ))
    5/10
    Ответить Цитировать
    0
1 8 28 29 30 31 50 162
1 человек читает эту тему (1 гость):
Зачем регистрироваться на GipsyTeam?
  • Вы сможете оставлять комментарии, оценивать посты, участвовать в дискуссиях и повышать свой уровень игры.
  • Если вы предпочитаете четырехцветную колоду и хотите отключить анимацию аватаров, эти возможности будут в настройках профиля.
  • Вам станут доступны закладки, бекинг и другие удобные инструменты сайта.
  • На каждой странице будет видно, где появились новые посты и комментарии.
  • Если вы зарегистрированы в покер-румах через GipsyTeam, вы получите статистику рейка, бонусные очки для покупок в магазине, эксклюзивные акции и расширенную поддержку.s