• Есть пример как оформить репозиторий для портфолио?

    1. Сделай в репе всё что можешь сделать. Тоесть например тесты, настроенный ci/cd, и прочее такое.
    Бейджики, что тесты прошли/не прошли
    2. Полностью опиши проект, что это такое, и как его у себя задеплоить. В идеале какой-нибудь автоматизированный скрипт (например через Docker)
    3. Добавь скрины и ссылку на демку, если это возможно.
    4. Если проект сложный, то напиши документацию о том, что и где там есть.
    5. Естественно, опиши в отдельном разделе все используемые технологии, и для чего они использовались.
    Ответ написан
    1 комментарий
  • Есть ли смысл становиться тестировщиком если не лады с математикой?

    Target1
    @Target1
    вообще без разницы 60253d62a13e9825204182.jpeg
    Ответ написан
    Комментировать
  • Как вырасти до хорошего JS(React\Vue) программиста?

    Rocket2253
    @Rocket2253
    Пока забей на React/Vue и тд, и на алгоритмы и паттерны тоже.

    Порядок учебы должен быть таким:
    1. JS основы и практика (если практики нет в работе ищи задачки в интернете)
    Настоятельно рекомендую полностью изучить этот бесплатный open-source учебник: https://learn.javascript.ru/
    Я еще у них же проходил курс по JS платный (это не обязательно, курс очень во многом повторяет содержание учебника и задачи из него).
    В этом учебнике ты найдешь все и про js и про ооп и про работу js в браузере и тд. И подается это все от простого к сложному.
    Изучи основы js наизусть, а остальное прочитай и попрактикуй на разок и перечитывай по мере необходимости в работе.

    2. Изучи как делать сборку проекта для начала с помощью gulp, потом вебпак.
    например: (или другие курсы с ютуба)
    https://learn.javascript.ru/screencast/gulp
    https://learn.javascript.ru/screencast/webpack
    Научись делить код js, scss на небольшие файлы-модули - храни их в правильной структуре и настрой сборку.
    Научись настраивать проект так чтобы в нем была сборка js файлов в один, с использованием babel.
    Чтобы была сборка стилей scss. И например оптимизация картинок автоматическая.

    3. Немного порешай алгоритмы чтобы размять мозг,
    например на https://www.codewars.com/

    4. Дальше нужно поучить Реакт/Вуй и тд.
    Читай документацию и попробуй сделать какой нибудь мини проект.
    (например сделай приложение: список в котором можно добавлять элементы и подэлементы до бесконечности т.е. у каждого элемента будет кнопка "добавить дочерний элемент" и "удалить элемент") было у нас такое тестовое задание.

    5. Пройди бесплатный курс по Redux от самого создателя редакса Дена Абрамова https://egghead.io/courses/getting-started-with-redux

    Дальше уже надо искать работу junior Front-end разработчика, и на проекте подробно изучать документацию всех инструментов которые используются.

    Минутка мотивации: Я сам изучил js в основном на learn.javascript и react на оф. сайте, и сейчас спустя 3 года плотной работы с js занимаю должность senior front-end разработчика и team lead-а на проекте. (не хвастаюсь, но мотивирую :) )

    Я в числе прочего собеседую людей, и самое важное на что мы в компании смотрим это крепкие знания по js.
    Остальное можно доучить достаточно быстро. И когда мы набираем людей например на должность junior React разработчика, то знания js и умение шевелить мозгами обязательны, а вот знаний реакт достаточно поверхностных. Ну и желательно иметь js/react опыт хотябы в виде собственных pet projects на аккаунте github.
    Ответ написан
    Комментировать
  • Направление для развития в React?

    rockon404
    @rockon404 Куратор тега React
    Frontend Developer
    Redux в React-разработке надо знать обязательно. Еще, хорошо знать MobX, так как все больше компаний используют его в новых проектах.

    Так же, вам стоит познакомиться с такими инструментами как:
    typescript
    webpack/babel
    react-router
    redux-thunk
    redux-act (имхо, лучшая упрощалка бойлерпелйта redux)
    styled-components
    reselect
    next/create-react-app
    axios
    react-helmet
    react-portal
    classnames
    eslint/tslint/prettier/lint-staged/husky
    jest
    express

    Перечисленные инструменты, кроме redux-act, используют в React-разработке чаще всего.
    Ответ написан
    1 комментарий
  • Как правильно составить план самообучения?

    @php65535
    Для начала определись, чего хочешь на самом деле. Если твердо уверен в желании связать всю оставшуюся жизнь с программированием, советую пока сконцентрироваться на теории. Самостоятельно углубляйся в темы, которые дают в ВУЗе, подбирай дополнительную литературу. В качестве ориентира можешь взять программу одного из ведущих американских университетов, в интернете есть множество вариантов со ссылками на все необходимые материалы (пример). Всем этим стоит заниматься именно сейчас, потому что потом может банально не хватить времени и мотивации.

    Если же пока хочется просто заработать денег, стоит уделить больше внимания прикладным знаниям и практике с прицелом на то, чтобы как можно скорее устроиться на работу. Для начала следует определиться с нишей. Она должна соответствовать как минимум двум критериям:
    • Достаточная широта. Чем больше в нише компаний, тем статистически больше твои шансы найти работу.
    • Минимальное время, за которое можно получить навыки, необходимые для работы в нише. От начала обучения до трудоустройства тебя должно отделять 12-18 месяцев. Чем быстрее сможешь устроиться на работу и начать зарабатывать, тем лучше. Это даст хороший толчок как мотивации, там и твоему профессиональному росту.


    Я знаю только 2 ниши, удовлетворяющие этим критериям (заметь, это не значит, что других нет):
    • Мобильная разработка (Android, iOS).
    • Веб (фронтенд или бекенд). Ты правильно подметил, что в вебе большая конкуренция. Но конкурируют между собой в основном низкоквалифицированные работники. Минимально адекватных людей с базовыми знаниями отрывают с руками. Если потратишь год-полтора на правильное самообразование, то без проблем сможешь получить свои $1.5-2k (в Москве/на удаленке) на старте.


    Мобильную разработку и веб совершенно точно можно освоить за полтора года, если голова соображает хоть сколько-то. Подтверждений тому множество, есть они и на Тостере (пример).

    При выборе направления игнорируй безосновательные мнения задротов с их "настоящий мужик программист должен" и "X - плохо, пнятненько?". Все эти выпады - просто сезонное обострение синдрома вахтера.

    Когда определился с нишей, выбирай самый популярный в этой нише язык. Критерий популярности - количество вакансий на этом языке. Для разработки под Android это будут Java и Kotlin, для iOS - Objective C и Swift, для веб бекенда - PHP, для веб фронтенда - JS и TypeScript. Как уже писали, первый язык программирования - не приговор. Если ты хорошо освоишь хотя бы один, то сможешь без проблем перейти на другой (в той же парадигме) за 3-6 месяцев.

    Один из вариантов плана обучения такой:
    1. Заходишь на свой любимый сайт с вакансиями
    2. Ищешь 10 вакансий "middle %language% developer" (именно middle, это важно)
    3. Выписываешь все, что встречается хотя бы в 8 из 10 вакансий
    4. Гуглишь одну из тем по запросу "%topic% interview questions". Отмечаешь вопросы, на которые не знаешь ответа. Поначалу многое будет непонятно - это нормально, по мере изучения картина станет ясней.
    5. Гуглишь тему по запросу "%topic% introduction"
    6. Если попадаются книги, берешь первую попавшуюся и читаешь. Если книг нет, читаешь первые 5 статей. Как-то особенно заморачиваться с выбором книг на данном этапе вряд ли стоит: вводная литература вся примерно одинакова, и у тебя еще нет нужных знаний, чтобы отделить зерна от плевел. Если очень хочется, можешь попросить рекомендации на форумах/в чатах, где сидят программисты, работающие в выбранной тобой нише.
    7. Возвращаешься к пункту 4. Если еще остались какие-то непонятные вопросы, гуглишь их индивидуально.
    8. Повторяешь пункты 4-7 для каждой темы


    Если изучаешь какой-то практический навык (например, работу с системой контроля версий или язык программирования), обязательно подкрепляй теорию решением небольших, но реальных задач. Один из хороших вариантов - сделать какой-то свой проект и экспериментировать на нем. Если совсем нет идей для проектов, можно выбрать что-то из https://eax.me/programming-language-learning/ .

    Хорошо бы изучать темы в определенном порядке, но он будет сильно зависеть от направления, поэтому конкретных рекомендаций дать не могу. В любом случае, я бы не стал сильно фокусироваться на отборе самого эффективного плана. Эффективность наверняка будет разниться для разных людей, и лучше попробовать хоть что-то, чем пытаться найти идеал. Тем более, что темы во многих вводных планах пересекаются, и, если не пойдет один, всегда можно попробовать другой.

    Контролировать прогресс в теоретических вопросах самостоятельно трудно, желательно иметь внешнюю обратную связь. Один из вариантов ее получения - собеседования. Если на следующем собеседовании смог ответить на вопросы, на которых завалился на предыдущем, значит, прогресс есть)

    Практические задачи и проекты можно разбивать на небольшие завершенные шаги. Например, если делаешь мобильное приложение, которое выводит погоду в выбранном пользователем городе. Можно выделить следующие подзадачи:
    1. Создать проект в IDE
    2. Добавить главный экран
    3. Добавить на главный экран контрол выбора города
    4. ...

    Делаешь каждый день несколько таких задач, это и будет метрикой прогресса. Опять же, будет здорово, если кто-то со стороны сможет дать оценку твоей работе. Как вариант, можешь попросить знакомых программистов или использовать специальные сервисы, чтобы заказать платное код-ревью.

    Как только сможешь без подглядывания в Гугл отвечать на 80% вопросов с собеседований по всем темам своего направления, можешь начинать рассылать свое резюме. Лучше устроиться на работу как можно быстрее, но ни в коем случае не "за бесплатно". В компаниях, где платят мало, как правило, плохая инженерная культура, и никакого полезного опыта там все равно не получишь, а только потеряешь время.
    Ответ написан
    Комментировать
  • Как прeодолеть зону комфорта, стать фрилансером не обанкротившись?

    kumaxim
    @kumaxim
    Web-программист
    Для начал ответь сам себе на вопрос "А чем тебе неудобна текущая золотая клетка"? Можешь не писать здесь, но определись для себя.

    Далее нужно осознать, что фриланс - это подвид бизнеса. Есть книжка Р.Киосаки "Квадрант денежного потока". Там всех людей, работающих в экономике разделяют на 4 части:
    1. Р - наемные работники
    2. П - предприниматели
    3. Б - бизнес
    4. И - инвесторы

    Фриланс - это сегмент П. Ты работаешь один, возможно зарабатываешь больше чем работая по найму, но вот ты заболел, продуло тебя где-то, температура 38.5.... Сомневаюсь что ты из стали сделан и сможешь в таком состоянии писать код.
    Сегмент П очень хорошо охарактеризовал г-н Залогин из Локус Медиа. Он сказал примерно так: "Вы человек-велосипед - пока крутите педали - едите, как только перестали - упали"

    Переходя к твоему вопросу о выходе из зоны комфорта.
    Первое что рекомендую перед началом своего бизнеса - оплати все долги. Закрой ипотеку, погаси автокредит, все потребительские заемы и т.д. В случае если ты провалишься(первый блин, обычно, комом) по крайней мере ты со своей семьей не под мостом окажешься.
    Второе - содержание семьи. Никакие твои заработки не должны влиять на твою жену/ребенка. Твои родные, как минимум, должны иметь крышу над головой + еду на столе. Посчитай сколько ты платишь за комуналку + еду. Далее умножаешь эту сумму на 24 месяца. Это финансовая подушка твоей семьи.
    Третье - планирование. Бизнес без бизнес-плана - это не более чем хобби. С 16 лет стремился зарабатывать в сети. Продавал ссылки на sape.ru в 2008-2009, работал с трафиком в 2010-2012, продавал китайские безделушки с 2013-2014... Сейчас ушел в разработку одного SaaS-решения. Первые пару месяцев оптимизм из ушей хлещет, думаешь "Да все будет, да это фигня, преодалею...." Но вот начинаются черные полосы: ТИЦ сайта в планируемый апдейт не вырос до нужного значения, твой сайт на 9 месте в выдаче, вместо требуемой тебе 3-4 позиции, товар из Китая на таможне завис.... Да я могу до бесконечности перечислять проблемы, которые возникали у меня... А время - деньги: тебе нужно платить аренду, зарплату, рекламу, кредиты и т.д. Не платишь - начинается ругань, из Максима Александровича я сразу превращаюсь в мошенника, кидалу, сволочь... эх, во общем суть ты понял. Думай на 2 шага вперед, вот что я хочу сказать
    Четверное - не делай бизнес с полного нуля. Перт Осипов(проект Бизнес Молодость) в каком-то из видео говорил, что мы не ценим самое ценное что у нас есть, мы воспринимаем это как должное, когда для других людей это может быть сравни бриллианту среди кучи стекляшек. Вы не первый день работайте в ИТ по какой-то специализации, так ведите эту специализацию и дальше. Занимайтесь своим любимым делом.
    Пятое - не пытайтесь все делать сами. Когда я запустил свой самый первый интернет-магазин по Китайским безделушкам я все делал сам: рисовал дизайн, верстал его, настраивал рекламу, обзванивал клиентов, носил товар на почту.... В общем занимался вообще всем! Причем за всей этой рутиной я не видел, что мой сайт работает не эффективно, я упускаю из виду 20% горячих клиентов, 10% моих бандеролей исчезают в глубинах Почты России... Вы как первое лицо компании должны знать все процессы своего предприятия, иначе Вы не сможете им управлять, но Вам не нужно все процессы делать самому. Отдайте часть на аутсорс или делегируйте наемному сотруднику.
    Шестое - я на этом очень сильно обжегся около 3-х лет назад.... Ставьте своим сотрудникам четко достижимые KPI(ключевые показатели эффективности). Например, есть у меня форма заказ обратного звонка на сайте. Человек пишет туда своего Имя и номер телефона, после чего эти данные попадают в CRM. Для менеджеров, которые у меня обрабатывают вызовы клиентов один из KPI звучит так: перезвонить клиенту в течении 15 минут после поступления от него заявки, если она поступила в рабочее время. Причем все KPI Вы должны сформулировать максимально точно и подробно. Я сам с KPI работаю так: есть у человека базовый оклад и базовый набор KPI, которые ему необходимо выполнять. Если он их выполняет - получает оклад, выполняет лучше - получает оклад + премию. Причем оклад у меня сам небольшой, около 6 т.р., но нижняя з/п у меня примерно в 2,5 раза выше.

    Первые 4 пункта - это как мягко выйти, вторые два - как не свалиться.

    В целом о бизнесе в РФ могу сказать что его делать относительно легко. Достаточно просто делать что-то хорошо и по человечески относится к своим клиентам. Примерно за 1 год Вы нарабатываете определенную базу контактов(поставщики/партнеры/клиенты), которые Вас знают и доверяют Вам. А далее главное все это не растерять.

    Вам могут все Ваши родные/коллеги/друзья говорить "Да ты что, сейчас санкции, налоги, коррупция..." Поверьте, все это херня! Под прессом можно работать и зарабатывать, причем когда его снимут - Вы получите взрывной рост. А все эти отговорки про санкции, коррупцию, высокие налоги... Да просто у кого-то очко играет!
    Ответ написан
    14 комментариев
  • Пригоден ли Sublime Text 3 для Ruby on Rails?

    @gsmetal
    Я пользуюсь давно и доволен. Мой список основных плагинов:
    1. BeautifyRuby;
    2. Better CoffeeScript;
    3. BracketHighlighter;
    4. Case Conversion;
    5. Rails Migrations List;
    6. SublimeGit;
    7. Ruby Hash Converter (правда я его ставил из гита, оно не работало в ST3);
    8. SublimeERB.

    Но самая часто используемая фича — это, конечно, ctrl+p.
    Ответ написан
    Комментировать
  • Как получить должность штатного верстальщика?

    @Grag
    1. Чего точно хватит: HTML5/CSS3/LESS/SASS/Bootstrap/Foundation/JavaScript (Jquery обязательно, все плагины или подавляющее множество на нем)/Адаптивность

    2. 10 уверенных работ, хорошо прокомментированный код хватит

    3. Тех. образование у верстальщика это смешно. Гуманитарки хватит вполне.

    4. Без него ни куда. Зарплату по вашему региону не знаю

    5. Хороший спец всегда нужен, и тут дело в умении разбираться в среде работы, любить свое дело, быть асом или на подходе к этому состоянию, а не в пестром портфолио и т.д.
    Ответ написан
    2 комментария