На самом деле, ребята, вы зря раздули недовольство. И зп там отличная с текущим курсом и проекты есть. Всем, кто уверен в своих силах советую попробовать туда податься. Инженером не советую, инженеры — расходный материал, их легко нанимают и выгоняют с проектов, к тому же там хватает индусов на такие вакансии. Подавайтесь на Architect, Chief Architect или Software Engineering Manager. Кстати на менеджера и CA задание почти одни и те же.
Тест проходится через платформу Hacker Rank, можете зайти и потренироваться, чтобы привыкнуть к интерфейсу.
Далее проект на 3 дня, по мне так ничего сложного если достаточный опыт, сейчас еще обязательно требуется писать тесты.
На менеджерскую позицию на одно интервью больше — проверяют ваш язык на отвлеченную от программирования тему, просто можно подготовить тему или рассказать о чем угодно, что интересует кроме программирования.
Процесс может затянуться, например, у меня первый раз занял 3 месяца.
P.S. Я проработал там 9 месяцев менеджером и 3 месяца инженером. Если кому-то интересно могу еще что-нибудь рассказать или подсказать.
Короче не стоит его изучать. В es6/es7 уже есть почти все, например декораторы в es7. Лучше сразу на стандарте писать, в последнее время за него очень серьезно взялись и JS самый популярный язык. Пробовать es7 можно уже и сейчас через траспилятор babel.
P.S. Лучше использовать сразу es7 для классов компонентов, чтобы подружить sublime и linter с es7 надо поставить eslint + eslint-babel-plugin вместо jshint. Вот хорошая статья как это сделать https://medium.com/@dan_abramov/lint-like-it-s-2015-6987d44c5b48#.7fltq7vnz
Да, действительно устарела, redux для хранения единого состояние системы, причем это хорошо не только, чтобы легко воспроизвести баг, но можно и отмотать назад-вперед, такая машина времени.
ES6/ES7 позволяет писать компоненты реакта более локанично и правильно, но например jshint не поддерживает еще ES7, так как спецификация не готова, но нормально задавать handler'ы компонентов через => функцию можно только в ES7, так как она автомато биндит this, а в ES6 приходится вручную биндить внутренние обработчики в конструкторе, кроме того в ES6 нельзя внутри класса объявить статическое свойства, например propTypes (приходится их писать после объявления самого класса).
Короче развелся целый зоопарк технологий, но вроде как самое нормально сочетание сейчас react/redux/es6/es7 и jest для тестирования, после всяких ангуляров, что первого, что второго — это просто чистое счастье.
Что касается виртуального дома, то эта идея действительно крута и правильна, redux как последний кирпичик все расставил на места, не менялась ссылка на объект, значит не изменилось состояние, значит рендерить не надо, потому что состояние должно быть immutable. Виртуальный дом это очень хорошо, получше всяких ангуляров (я на ангулярах 3 года просидел). virtual dom решает почти все проблемы, если не решает то надо писать на нативном JS, но надо знать что делать, код должен быть оптимизированным. Кстати очень хорошая книга High Performance JS, без ее прочтения я бы даже не допустил человека к написанию кода на JS.
Тест проходится через платформу Hacker Rank, можете зайти и потренироваться, чтобы привыкнуть к интерфейсу.
Далее проект на 3 дня, по мне так ничего сложного если достаточный опыт, сейчас еще обязательно требуется писать тесты.
На менеджерскую позицию на одно интервью больше — проверяют ваш язык на отвлеченную от программирования тему, просто можно подготовить тему или рассказать о чем угодно, что интересует кроме программирования.
Процесс может затянуться, например, у меня первый раз занял 3 месяца.
P.S. Я проработал там 9 месяцев менеджером и 3 месяца инженером. Если кому-то интересно могу еще что-нибудь рассказать или подсказать.
ES6/ES7 позволяет писать компоненты реакта более локанично и правильно, но например jshint не поддерживает еще ES7, так как спецификация не готова, но нормально задавать handler'ы компонентов через => функцию можно только в ES7, так как она автомато биндит this, а в ES6 приходится вручную биндить внутренние обработчики в конструкторе, кроме того в ES6 нельзя внутри класса объявить статическое свойства, например propTypes (приходится их писать после объявления самого класса).
Короче развелся целый зоопарк технологий, но вроде как самое нормально сочетание сейчас react/redux/es6/es7 и jest для тестирования, после всяких ангуляров, что первого, что второго — это просто чистое счастье.
Что касается виртуального дома, то эта идея действительно крута и правильна, redux как последний кирпичик все расставил на места, не менялась ссылка на объект, значит не изменилось состояние, значит рендерить не надо, потому что состояние должно быть immutable. Виртуальный дом это очень хорошо, получше всяких ангуляров (я на ангулярах 3 года просидел). virtual dom решает почти все проблемы, если не решает то надо писать на нативном JS, но надо знать что делать, код должен быть оптимизированным. Кстати очень хорошая книга High Performance JS, без ее прочтения я бы даже не допустил человека к написанию кода на JS.