Список вопросов
Как зайти в Даркнет?!
25th January, 01:11
8
0
Как в tkinter из поля ввода Entry получить значение в одну переменную и обновить строку кнопкой, затем получить ещё одно введённое значение и затем сложить их. Ниже пример кода
21st July, 19:00
900
0
Программа, которая создает фейковые сервера в поиске игровых серверов CS 1.6 Steam
21st March, 17:43
952
0
Очень долго работает Update запрос Oracle
27th January, 09:58
916
0
не могу запустить сервер на tomcat HTTP Status 404 – Not Found
21st January, 18:02
907
0
Где можно найти фрилансера для выполнения поступающих задач, на постоянной основе?
2nd December, 09:48
942
0
Разработка мобильной кроссплатформенной военной игры
16th July, 17:57
1727
0
период по дням
25th October, 10:44
3957
0
Пишу скрипты для BAS только на запросах
16th September, 02:42
3722
0
Некорректный скрипт для закрытия блока
14th April, 18:33
4614
0
прокидывать exception в блоках try-catch JAVA
11th March, 21:11
4382
0
Помогите пожалуйста решить задачи
24th November, 23:53
6088
0
Не понимаю почему не открывается детальное описание продукта
11th November, 11:51
4352
0
Нужно решить задачу по программированию на массивы
27th October, 18:01
4400
0
Метода Крамера С++
23rd October, 11:55
4309
0
помогите решить задачу на C++
22nd October, 17:31
4002
0
Помогите решить задачу на python с codeforces
22nd October, 11:11
4492
0
Python с нуля: полное руководство для начинающих
18th June, 13:58
2599
0
Где брать задания для совершенствования навыков и получения опыта?
Просмотров: 301
 
Ответов: 12
Хотелось бы что-то вроде:
1) Выбрал профессиональную область
2) Уровень сложности
И на выходе получил задание. Желательно, конечно же, не тупые, а с расчетом на реальную ситуацию на рынке.
Знаю более-менее php, js и т.д., но с работой беда, а опыт набивать тупо негде :(
Самому придумывать конечно вариант, но ей богу надоело. Да и упираюсь в неактуальность.
Идеальный вариант — всё-таки найти работу. Думаю, не бывает такого, что ее нет. Можно предложить свои услуги бесплатно: это будет выгодно и компании и вам, т.к. получите столь необходимый опыт. Тут нужно просто желание и настойчивость.
Еще есть вариант примкнуть к опен-сорс сообществу и получать задания на разработку уже для реального продукта. Однако, вариант с работой мне видится намного более полезным.
А чем конкретно Вы хотите заниматься в перспективе? Веб в общем и целом, или ближе к бэк-енду, или наоборот — поближе к фронт-енду?
1) Если выбор — фронт, то конечно же имеет смысл придумать «какой-нибудь веб-сайт» и сделать его.
2) Для бэк-енда — пробуйте мыслить сервисами, решайте абстрактные задачи типа «написать сервис который будет складывать входящие запросы (урлы) в очередь + скрипт-разгребальщик этой очереди, забирающий страницы с серверов и делающий какую-то их обработку, результат складывать в бд». Тут с одной стороны проще (задачи как правило четче), с другой — важна производительность, возможно, возникнет желание сделать сначала параллельный разбор очереди, потом заюзать асинхронный ввод-вывод через какой-нибудь libev… У меня например есть задача до которой не доходят руки — запустить на медиацентре сайт-надстройку над поисковым сайтом локальной сети провайдера, чтобы там около найденных результатов была кнопка «скачать к себе», дать себе доступ к этой системе из интернета, и сделать очередь из заявок на скачивание. Уверен, вы тоже можете придумать подобную полезную в быту задачу.
3.1) Если хочется всего понемногу — хорошим способом осознать теорию будет велосипедостроение. Напишите простейшую CMS для управления вебсайтом, имеющим древовидную структуру. Полностью сами, используя как можно меньше сторонних модулей и фреймворков (это не поможет Вам научиться работать с теми библиотеками, которые востребованы на рынке, но даст внутреннее понимание их работы). Попробуйте ее разогнать, оптимизировать, улучшить. На выходе получится свой небольшой фреймворк и система, вполне пригодная для клепания сайтов-визиток. Самое главное что получится — понимание внутреннего устройства систем, которые делают то же самое, что и Ваша. Пробуйте их сравнить, радуйтесь там, где будет лучше Ваша, и допиливайте ее там, где она будет отставать. Не стесняйтесь изучать чужой код и не задавайте на форумах вопросов про то, «как это работает», пока не будете уверены в том, что сами уже не сможете разобраться.
3.2) альтернативный вариант для «всего понемногу» — строить велосипед не с нуля, вытачивая руками гайки, а из готовых узлов (библиотеки, фреймворки). Этот путь быстрее поднимет Вам цену на рынке и будет более полезен в краткосрочной перспективе, но даст ли он такое же глубокое понимание как в пункте 3.1 — не уверен. Я в свое время шел другим путем :)
Я так понимаю, Вы студент. Для студентов сейчас стало «модно» организовывать практики по 20 часов в неделю. Т.е. Вы на время обучения стажируетесь на фирме бесплатно. Как по мне, с целью получения драгоценного опыта лучше не придумаешь. Когда пойдете на собеседование, не стесняйтесь, выдвините этот вариант. Есть большая вероятность, что Вам пойдут навстречу.
Большинство компаний в ответ на резюме высылают тестовое задание, и нередко дают оценку выполнения, даже если соискатель слабоват, и брать на работу его не собираются. Я в свое время сильно подтянул свои навыки активно рассылая резюме и выполняя тестовые задания. С 3-й попытки взяли на работу, при том что когда я брался за первое свое тестовое задание, я в веб-деве вообще ноль был.
Из личного опыта.
— Берёте и придумываете какую-нибудь очень сложную вещь (портал, игру, соц.сеть и т.д.). Советую пообщаться с друзьями — они могут подкинуть множество «бредовых» и удачных идей. Что не особо важно, главное чтобы было действительно сложно и Вы имели слабое представление как это сделать.
— Накидываете примерный план/концепцию, что бы не забыть.
— Наводите справки как это сделать. Хотя бы примерно.
— И начинаете делать.
Осуществите Вы задуманное или нет — неважно. Суть в том, что по ходу решения Вы будете решать задачи, которые резко расширяют ваше понимание работы системы. Это развивает в Вас профессионализм.
Способ был мне подсказан знакомым гуру программирования. Проверил лично на себе — успех прямопропорционален упорству.
Смысл:
— Если хотите чему-то научиться не задумывайтесь над содержанием, главное повышенная сложность задачи.
Идете к любому сайту, который вы любите (только желательно энтузиасткому) и предлагайте там что-нибудь улучшить бесплатно.
Я в свое время тусовался на форуме поклонников Лукьяненко и начал писать для него модули. Сначала простенькие без БД, а дошел до сложных систем межсайтовой интеграции с использованием AJAX, XML и SOAP. :)
Если еще позволите добавить, однажды получил задание написать на Objective-C программку, которая должна работать с базами данных под «яТелефон». При учете, что с базами данных у меня на то время было туго, а с маком я вообще никогда не работал. На первых порах мозги вообще плавились. Но уже под конец завершения все обретало более-менее логичную форму.
Кстати, если ищете источник для вдохновления, то могу предложить некий хакатон «с самим собой». Просто берете какую-нибудь программу по зубам и пытаетесь написать ее аналог, но собственными силами.
Чтобы ответить на вопрос вам нужно войти в систему или зарегистрироваться