Перспективы Java, AI и творческие подростки

Отвечаем на вопросы читателей GeekBrains.
3 минуты6186
Подскажите, чем отличаются факультеты Big Data и Data Engineering? Можно ли по этим специальностям работать удалённо? 
 

На факультете Big Data аналитики мы готовим специалистов по анализу данных — аналитиков, которые будут строить статистические модели и модели машинного обучения. Для этого нужно знать математику, программирование, предметную область, а также владеть технологиями работы с большими данными (Hadoop, Spark).

Специалистам, которых мы готовим на факультете Data Engineering — дата-инженеров — важно уметь работать с базами данных (SQL и NoSQL), строить пайплайны обработки данных, а также уметь работать с Hadoop и Spark. Для этой работы не нужно досконально знать математику, но ценятся навыки работы с современными технологиями хранения и обработки данных.

Дата-инженеру и аналитику данных не обязательно присутствовать в офисе, чтобы делать свою работу. В отличие, например, от специалистов по “железу”, им не нужно работать напрямую с серверами и хранилищами данных, достаточно удалённого доступа. Возможность такого формата работы зависит также от самой компании — налажены ли в ней процессы, рассчитанные на удаленные Agile-команды.

 
Что нужно, чтобы написать свою операционную систему?
 
Чтобы написать свою операционную системы, нужно хорошо знать Computer Science — в частности, архитектуру компьютера — а также низкоуровневые языки (Assembler) и языки более высокого уровня, такие как C/C++.
 
Какой язык программирования стоит начать осваивать новичку, который заинтересован в искусственном интеллекте? Какая база необходима для написания программ по нейронным сетям? И с чего начать для понимания квантового программирования? Благодарю за внимание! 
 

Почти все вакансии специалистов по ИИ требуют знания Python. Так как все основные библиотеки для обработки данных и машинного обучения написаны именно для этого языка программирования, они хорошо оптимизированы и постоянно поддерживаются. За счёт того, что у них много пользователей, всегда можно быстро найти ответ на интересующий вопрос в Интернете. Разработка на Python ведётся достаточно быстро — это тоже немаловажный фактор. Дополнительно может пригодиться знание C/C++ для написания быстрых модулей — там, где критична скорость работы программы, например, в робомобилях.

Чтобы разобраться в работе нейронных сетей, нужно знать основы линейной алгебры и матанализа, теории вероятностей и математической статистики. Также нужно знать Python, основы обработки данных, машинного обучения, алгоритмы и структуры данных, владеть библиотеками для нейронных сетей — PyTorch, Keras, TensorFlow. Могут понадобиться знания по компьютерному зрению и обработке естественного языка (NLP).

Чтобы начать писать программы с использованием квантовых вычислений, нужно знать основы линейной алгебры, операции с комплексными числами и начала квантовой механики. Также нужно владеть языком программирования Python и библиотекой Qiskit (как альтернатива — Q# или библиотеки языка Julia для квантовых вычислений). Нужно знать принципы работы систем кубитов, основные квантовые алгоритмы, правила расчетов с векторами состояний и матрицей плотности. Хорошим стартом может стать аккаунт на IBM Quantum Experience и изучение возможностей этого инструмента. 

 
У меня ребёнок — творческий подросток 13 лет, любит также математику. Что посоветуете для дополнительного изучения помимо Scratch и геймдизайна? Как мама, раздумываю над вашим курсом по кибербезопасности...
 
В рамках GeekSchool, обучения для подростков, у нас есть курсы по геймдеву — игровой разработке. Мы бы рекомендовали присмотреться к разработке игр на Python, Java или Unity. Таким образом можно изучить через создание игры какой-то язык. Курс по кибербезопасности также очень интересный, но на нём ребята почти не программируют, а  изучают уязвимости сервисов, учатся защищаться от кибератак и в конце курса соревнуются в поисках уязвимостей как настоящие хакеры.
 
Добрый день! Как вы оцениваете перспективы языка Java? Будет ли он востребован в ближайшее время? Мне не нравится фронтенд, правильно ли будет выбрать Java в качестве первого языка для изучения? Трудно ли будет освоить Java новичкам?
 
Александр Фисунов, декан факультета Java-разработки в GeekUniversity:

«Перспективы у языка Java очень хорошие. Он развивается с 1996 года и до сих пор является одним из самых популярных языков программирования в мире (входит в тройку самых популярных). Почему важно, что язык Java появился в 1996 году? Дело в том, что за почти 25 лет на нём было написано огромное количество программного обеспечения. Так что с вероятностью 100% на рынке будут нужны специалисты, которые могут сопровождать эти системы. Кроме того, за это время появилось огромное количество разработчиков, которым действительно нравится работать на Java, которые не хотят пересаживаться на другие языки. Следовательно, будет и большое количество новых проектов, над которыми кто-то должен работать. Очень хорошим примером служит банковское ПО, оно практически все написано на Java, и поэтому так много вакансий от банков появляется именно по языку Java.

Java очень хорошо подходит для первого изучения, у него не очень высокий порог входа, и при этом язык достаточно мощный для выполнения практически любых задач».

 
Освоить востребованную профессию в Data Science можно всего за полтора года на курсах GeekBrains. После учёбы вы сможете работать по специальностям Data Scientist, Data Analyst, Machine Learning, Engineer Computer Vision-специалист или NLP-специалист.

Освоить востребованную профессию в Аналитике больших данных можно всего за полтора года на курсах GeekBrains.

программированиеjava
Нашли ошибку в тексте? Напишите нам.
Спасибо,
что читаете наш блог!