Pull to refresh

Так вам нужен React или все же React Native разработчик?

Количество клиентов, которые выбирают React Native для своего продукта однозначно растет. Такой вывод можно сделать заглянув и на фриланс платформы, и в разделы поиска работы. Но если в мире фриланса есть более четкое понимание какими навыками должен обладать React Native разработчик, то у большинства компаний наблюдается некое размытие понятий. Как результат, в перечне обязательных навыков помимо React Native, числиться ReactJS, JavaScript, HTML, CSS. В свою очередь опыт в iOS/Android SDK либо не требуется вообще, либо в качестве “будет плюсом".

Если коротко о React Native.


Принцип работы в основном такой же как и ReactJS за исключение того, что он не манипулирует DOM через VirtualDom. React Native вообще никак не связан с HTML, все написано на JavaScript и зависит от нативных SDK iOS & Android. Нет CSS, но есть CSS-like полифилы. 
Это означает, что разработчик должен иметь в арсенале непосредственно React Native, а также iOS или Android SDK.

А как же JavaScript, ReactJS, HTML и т.д.?


Во-первых, нельзя знать React Native и не знать JavaScript и React на определенном уровне. Это становиться понятным, если вернутся к описанию технологии выше. Во-вторых, если нужен действительно разработчик мобильных приложений, то требование знаний уровня Web Front-End на практике — излишне. Конечно нанимая разработчика хочется, что бы он знал не только то как реализовать фичу, но и то как она работает “под капотом” и еще чуть больше. Но это полезно для определения уровня разработчика и на собеседовании, а не в описании вакансии, да еще в списке строго необходимых навыков.
В качестве примера можно посмотреть на вакансии Native iOS. Крайне редко, и весьма для специфических задач, встречается требование знания языка С. А ведь Objective-C построен на его основе.

Зачем знание Native SDK?


На практике одного React Native недостаточно. Существующие модули не всегда содержат необходимый функционал, не всегда обновляться так быстро как это необходимо, а некоторых и вовсе нет. Но это не является проблемой, если разработчик может реализовать недостающий функционал нативно для iOS или Android.

Почему требования не соответствуют и к чему это приводит?


Проблема кроется в том, что требования пишутся устами Tech Lead’а, а в данном случае устами Teah Lead’а из мира Web. А мы помним, что React Native разработчик разрабатывает софт для мобильных приложений. Ему не нужно быть Web Rock Star. В результате, разработчик и компания не могут найти друг друга по долгу.

Заключение


В итоге идеальный разработчик это React Native + iOS + Android. В реальном мире, это зачастую отдельно React Native + Android и отдельно React Native + iOS. Может показаться, что тогда нет смысла использовать React Native, если все равно нужны разработчики iOS и Android. Но на практике экономия бюджета, даже при наличии двух отдельных разработчиков составляет 1.5х: 2х, но это уже совсем другая история.
Tags:
Hubs:
You can’t comment this publication because its author is not yet a full member of the community. You will be able to contact the author only after he or she has been invited by someone in the community. Until then, author’s username will be hidden by an alias.