Устроиться на (удалённую) работу Ruby on Rails разработчиком
Как-то так сложилось, что ещё со школы хотел быть программистом, но постоянно занимался (и вполне успешно) чем-то другим. Хочу, пока не поздно, сменить профессию, стать профессиональным программистом и зарабатывать этим себе на жизнь.
Выбор направления приложения усилий сделан мною осознанно, поскольку я уже знаком с программированием и рядом других языков. Язык Ruby - интересный, выразительный, универсальный и, что немаловажно, востребованный. А стек Ruby on Rails привлекает меня высокой концентрацией "правильных" подходов (чёткая структура проекта, основанная на MVC, обязательная работа с Git, покрытие кода тестами, принцип DRY и т.д.).
В процессе выполнения цели, помимо изучения необходимых языков и технологий, я должен создать портфолио, состоящее из ряда интересных мне проектов (которые уже давно хочу реализовать).
А к моменту завершении цели, я должен обладать объемом навыков и знаний достаточным, чтобы пройти собеседование, устроиться на работу и расти далее уже как программист.
P.S. Начинаю не с полного нуля - на момент размещения данной цели, прошёл 7 из 11 частей курса от mkdev "Ruby основы программирования" (на сайте обновлен до Основы Ruby учимся программировать), прочитал большую часть книги (до 7-й главы включительно) "Язык программирования Ruby" (авторы Флэнаган и Мацумото), а также имею некоторый опыт программирования, работы с командными интерпретаторами, текстовыми редакторами, Git и т. д.
P. P. S. В план достижения цели ещё буду вноситься изменения и дополнения...
Критерий завершения
Я работаю (удалённо) Ruby on Rails разработчиком и зарабатываю себе этим на жизнь
Личные ресурсы
Свободное время и сильное желание, плюс навыки не относящиеся непосредственно к цели, но способствующие её достижению.
-
Изучить Ruby
-
Пройти курс по Ruby от Codecademy
-
Пройти курс Learn Ruby With the Edgecase Ruby Koans (Ruby Koans)
-
Продолжение следует...
-
-
Изучить Ruby on Rails
-
Изучить тестирование и рефакторинг
Этот этап тесно пересекается с двумя предыдущими этапами.
-
Изучить теорию программирования
Различные теоретические сведения (закрепляемые на практике!), которые необходимо изучить:
- алгоритмы
- OOP, OOD, SOLID, шаблоны проектирования
- REST APIs (RESTful web services)
Этот этап тесно пересекается с тремя предыдущими этапами.
-
Изучить работу с Git
- Git
- GitHub
- Bitbucket
-
Изучить основы работы с базами данных
- PostgreSQL
- Redis
- MySQL
- язык SQL
-
Изучить фронтэнд на базовом уровне
- HTML: HTML5, шаблонизаторы (TML, Slim, ERB, Haml)
- CSS: CSS3, SASS, SCSS
- JavaScript: Cofeescript, jQuery, AngularJS, npm, Ajax
- фреймворки: Bootstrap
-
Изучить основы автоматизации и развёртывания
- Deploy
- Memcached
- CI
- data migration
- Heroku
- Gulp
- AWS: Console, EC2, RDS, ELB, S3, CloudFront, Monitoring
-
Подтянуть английский язык
Разговорный и письменный до среднего уровня и выше
-
Изучить методологии и инструменты командной разработки
- Agile
- SCRUM
- JIRA
- Trello
- 4160
- 06 июля 2016, 06:58
Не пропустите новые записи!
Подпишитесь на цель и следите за ее достижением