Как подойти к серьезной web-разработке будучи специалистом в 1С, SQL (+ немного html, css, js)?
Знаю, что отношение к специалистам 1С весьма "снисходительное", ну вроде "бедных родственников". Поэтому, во избежание лишних вопросов, сразу оговорюсь об опыте работы в 1С и других областях программирования:
- отличные знания в 1С (язык, особенности архитектуры, хранения данных)
- хорошие и уверенные знания в SQL (собственные проекты по работе из 1С напрямую с базами данных (TransactSQL, SQLLite), реализация собственного языка запросов, динамически подгружаемых списков, оптимизация запросов)
- средние знания в html, css (+less)
- минимальные знания в js (общее представление о языке, небольшой опыт работы с jQuery, AngularJS (собственное one-page приложение - почтовый клиент, с интерфейсом вроде Google Inbox, группировкой цепочек писем, подгрузкой данных через ajax (rest api от 1С), обработкой действий пользователей + по мелочи всякие разработки)
- опыт работы с различными api от Google и других поставщиков (запросы из 1С для получения и обмена данными)
- интерфейс почтового клиента делал с использованием bootstrap (v3), имел опыт работы с fullcalendar и dhtmlx - плагинами
Честно себя в мире веб-разработки расцениваю на уровне junior и даже немного ниже, поскольку специализировано только web-разработкой никогда не занимался. Сейчас хочу немного отдохнуть от 1С и подтянуть свои знания в данной сфере хотя бы до уровня среднего специалиста (в идеале конечно senior, но как получится). В будущем планирую подтянуть знания по разработке мобильных приложений (там пока вообще мрак).
Собственно каким путем пойти? Финансовый вопрос в горизонте планирования до полугода - не самая большая проблема, проблема только в том, что сложно на эту сферу выделить более 6-7 часов в рабочий день + 1 выходной (10-12 часов).
Мысль была такая: устроится по совместительству в организацию занимающуюся веб-разработкой. Фриланс именно как специалист - не подходит, трезво оцениваю свои навыки, а врать не хочу и не люблю. Может кто подскажет каким путем лучше пойти. Буду очень благодарен.
Изучайте серверный язык php/ruby/python и фреймворк к нему. Пробуйте делать свой проект и ищите в нормальной компании ставку с обучением/менторством. Фриланс для серьезных разботчиков, а "школота" там ничего не зарабывает, не куда не растет и самостоятельно учится "гавнокодить" лижбы приняли.
Ваша неуверенность это верно. Не нужно прыгать выше головы и пытаться ободрать кого нибудь. Рост будет тогда, когда вам будет за кем тянуться. Поэтому еще раз повторю учите серверный язык и стремитесь в веб-фирму.
Можно поискать платные курсы в интернете, желательно с код ревью, где опытный ментор расскажет вам как не делать плохо и укажет на ошибки в коде, там где вы будете писать свой собственный проект и получать навыки и уверенность.
Главное - выбрать четкий вектор и не разбрасываться.
По своему опыту знаю - когда хочется что-то изучить - это получается на "одном дыхании".
Багаж знаний у вас неплохой, вполне реально с таким базисом зарабатывать стабильные 1000$ в мес. на фрилансе (без преувеличения). Поверьте, фриланс быстро перерастает в 3-5 постоянных крупных клиентов и серьезные заказы. Но всегда параллельно надо учиться, и повышать планку. Устройство в веб-студию принесет вам больше рутины, меньше денег, и (возможно) не будет хватать времени на самообучение в том направлении, в котором хочется (придется в то направление, которое скажут). Тут уже взвешивайте. Я в свое время не пошел в одну студию, сейчас только рад, что принял такое решение. На себя работать лучше: больше свободы, мотивации и развития.
У вас какое то мутное представление о веб студиях. Как раз наоборот. Приличная веб студия будет учить, подкинет проектов, которых не встретить на фрилансе, и интересных задач, а так же заставит поюзать различные технологии. 1000$ на фрилансе? Это зарплата джуна 700-1000$ долларов, за 40 часов в неделю. Как раз человек имеет базу. Немного основ веба и любого серверного языка и можно в бой, раскидывать резюме.
А вот на фрилансе(имеется ввиду рунет) с такими навыками ничего хорошего не выгорит. Ибо знать надо много-всего-разного, чтобы довести проект или задачу от начала и до конечной точки.
Не нужно советовать человеку "школопуть" верстка джумла, друпал. Далее на соплях клеем какое то фуфло и ездим на лохах заказчиках(которые как говорится не мамонт не вымрет).
На фриланс лучше топать с 1-3 годами опыта, когда есть уже навыки. Тогда можно и заказы по дороже брать, и с зарубежкой поработать. Тогда 1000-3000 долларов заработать реально.
Phizio, по поводу фриланса - тут я обозначил свою позицию. Будучи хорошим специалистом в 1С, я часто встречаюсь с результатом работы фрилансеров разного уровня и нет ничего прискорбнее чем фрил с низким уровнем знаний и навыков. К сожалению, бОльшего вреда чем они не наносит отрасли никто, даже просевший рубль )))). Поэтому я сознательно не планирую выходить на рынок оплачиваемых работ, до тех пор, пока мои работы не будут оценены хотя бы сообществом. И там уже исходя из оценки сообщества можно делать выводы о своей профпригодности.
Чем мне нравится вариант работать в веб-студии, возможность получить "доступ" к головам работающих там людей, с точки зрения направления мыслей и движений. Не спрашивать их "как мне сделать эту свистоперделку", а возможность задать вопрос "вот есть такая задача, я думаю решается она так. я правильно думаю?". И более того, я в общем то достаточно зарабатываю текущими навыками, чтобы в случае если окажется что я ошибся местом работы, сменить его без потерь.
Учитывая большой опыт с MS SQL, ASP.NET - это то, что Вам нужно. Причем и MVC и WebForms. А потом еще SharePoint подучить.
Это если Вас интересует разработка крупных проектов для бизнеса.
Если хочется делать небольшие сайтики, то тут конечно лидер PHP и с него надо начинать, а потом Python. Можно за компанию еще и Ruby, но это очень субъективно. Кто-то им восторгается, а кто-то приходит в ужас.
Зачем начинать с PHP, чтобы потом перейти на Python, если сразу можно на Python начинать? Когда дело касается фреймворков (которые требуются в 95% вакансиях), то Django проще освоить, чем любой серьезный PHP-фреймворк (Zend, Yii, Symfony).
German Jet: у каждого инструмента - своя ниша. В сфере небольших сайтиков (о которых написано в моем ответе), PHP явный лидер со своим набором готовых решений (CMS/форумы и т.п.). И да, с PHP реально легче начать, по нему больше документов, больше ресурсов и т.д.
Опять же, если мы говорим про Enterprise уровень, то я бы на его месте выбрал .NET, а не Python, т.к. у человека есть большой опыт работы с MS SQL, который он сможет в этом случае использовать, тогда как Python чаще всего работает в другом стеке.
Александр Анисков: Кроме лицензии на саму Windows (на вашем компьютере и на сервере) больше ничего покупать не нужно.
- В качестве БД MS SQL Express достаточен для многих проектов. Для очень крупных возможно понадобиться купить лицензию на Standard, но в таком случае и бюджет соответствующий.
Кроме того, ничего не мешает использовать другие СУБД, особенно привлекательно выглядит Postgresql. Я за последние 9 лет работы с ASP.NET ни разу не испытал потребности в других СУБД. Когда то давно SQL Server стоил дополнительных денег на хостинге и я юзал MySQL.
- Начиная с 2013-ой версии VS теперь имеет Community Edition, которая бесплатна для частных лиц и для организаций до тех пор, пока у вас в организации менее 250 компов и доход менее 1 млн долларов в год. Использовать в коммерческих целях можно!
Кроме того, есть еще WebMatrix - отличный инструмент, на котором кстати можно писать еще и на Nodejs и PHP.
Недавно появился Visual Studio Code, который кроссплатформенный.
А еще есть Monodevelop и Sharpdevelop, но это так, для общего развития.
Со средствами для разработки на самом деле вообще весело получается. У "платного" ASP.NET (который никогда сам по себе не был платным), уже очень давно есть отличная бесплатная IDE (раньше были Express версии, которые не поддерживали плагины, но все равно были очень мощными). В большинстве случаев кроме родной IDE больше ничего качать не нужно.
Тогда как для бесплатных PHP/PYTHON/RUBY хороших бесплатных инструментов попросту нет. Лучшая IDE для них от JetBrains и стоит денег (теперь еще и по подписке).
Александр Анисков: Кроме того, ASP.NET на данный момент в процессе официального портирования на Linux/MAC (до этого уже давно была Mono, но она не имела официальной поддержки Microsoft), так что последний "недостаток" ASP.NET скоро перестанет таковым быть.
Арам Арамян: будущая поддержка Mac радует, поскольку сам я использую их в своей жизни. Конечно сложно сделать выбор, тогда когда не знаком по сути ни с чем, больше чем "на словах". В принципе если смотреть через призму 1С, SQL, то наверное ASP.NET интереснее, особенно если пойти в сторону построения чего-то вроде локальных систем BI с web-интерфейсами, и поставщиками данных из 1С-ных баз данных (rest, oData, xml-выгрузки, да хоть в SQL напрямую лазь).
Пы.сы. понимаю что я тут опять про "свою 1С", но с другой стороны поймите правильно, хороших специалистов умеющих работать с web-инструментами и 1С днем с огнем не сыщешь. Чистым web-ерам нафиг не сдалась 1С-ина, а 1С-никам не сдался веб, ибо "мы и тут все можем". И разговаривать им между собой тоже сложно, лично проходил )))).