0

Информатика и вычислительная техника или программная инженерия

После программной инженерии можно работать:

Инженер-конструктор программного обеспечения | Инженер-проектировщик программных систем | Программист | Специалист по программной инженерии | Специалист по разработке программно-информационных систем | Специалист по тестированию программного обеспечения | Специалист по управлению программными проектами

После информатики и вычислительной техники :

ERP-программист | Html-верстальщик | IT-специалист | Web-администратор | Web-дизайнер | Web-программист | Администратор базы данных | Программист | Разработчик баз данных | Системный аналитик | Системный программист | Специалист SAP | Электроник

Я не вижу пока что большой разницы между этими направлениями (на программиста "учат" и там, и там). Может кто-нибудь объяснит, куда лучше идти?

  • Вопрос задан более трёх лет назад
  • 7765 просмотров

Судя по Вашему собственному описанию очевидно лучше первое – IMHO по большинству вопросов компетенции второго проще обучиться самому (либо на сертифицированных курсах), чем в ВУЗе.

Вообще если уж идти IT в ВУЗ я бы выбирал ВУЗ и специальность с упором на теорию (Computer Science, математика, системный анализ), вопросы организационного управления процессами разработки/проектирования/внедрения и т.д.

Вряд ли стоит ожидать от ВУЗа того, что там Вас хорошо обучат практике web-дизайна, системного администрирования актуальных ОС, оборудования, протоколов и ПО, программирования прикладных задач на актуальных языках с использованием актуальных библиотек/фрэймворков (если и обучат, то, скорее всего, эти знания будут поверхностны и/или устареют к моменту выпуска), в то же время на боевом опыте не особо научишься фундаментальным теоретическим вопросам, знание которых не только облегчает поиски достойно оплачиваемой работы, но и не редко выручает на практике.

10.02.2018, 08:58 106 Просмотров

На кого учиться: на спеца по искусственному интеллекту или на софт-инженера – вопрос очень популярный. А что вы выберете?

Очень часто можно встретить размышления на темы выбора одного из перечисленных направлений:

“Какая разница между вычислительной техникой и программной инженерией?”

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

Быстрый осмотр пациента

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

Чтобы понять разницу между специалистами в области вычислительной техники и программной инженерии, давайте взглянем на их соответствующую учебную программу в Университете Ватерлоо в Канаде.

Какие перспективы?

Давайте сначала сравним виды рабочих мест и стажировок, которые вы можете пройти после каждой программы.

К счастью, на сайте университета Ватерлоо есть несколько примеров. По каждому из направлений предложены места работы после успешного завершения учебы:

Вычислительная техника:

  • Веб-разработчик / архитектор, The Steele Group.
  • Программист, Harry Rosen Inc.
  • Мобильный / облачный разработчик, Clearbridge Associates Limited.
  • Разработка программного обеспечения, General Dynamics Canada.
  • Разработка программного обеспечения, Microsoft.
  • Agile Engineer, Pivotal Labs.
  • Бизнес-аналитик, Canadian Tire Corporation.
  • Менеджер по продуктам, Dropbox.p

Программное обеспечение:

  • Разработчик ПО, Tagged Inc./li>
  • Разработчик ПО, IBM Canada.
  • Менеджер продукта, Arius Software Corporation.
  • Инженер по ПО, VistaPrint USA.
  • Инженер-программист, Harris Corporation.
  • Разработчик ПО, Accenture Inc.
  • Менеджер продукта/Разработка программного обеспечения, NexJ Systems Inc.
  • Консультант, PureFacts Financial Solutions.
  • Консультант по реализации, Desire2Learn.

Как вы можете видеть, нет большой разницы между рабочими местами, которые вы можете получить.

Наиболее распространенные предложения работы, на которые можно рассчитывать после получения степени «Вычислительная техника» или «Программное обеспечение» – это разработчик программного обеспечения или инженер-программист. Существуют и другие варианты, такие как менеджер продукта, аналитик QA и консультант по технологиям, которые зависят от вашего набора навыков.

Обязательные темы первого года

Теперь давайте посмотрим на курсы каждой программы. Сначала сравним некоторые курсы, которые вам нужно будет пройти в первый год.

Вычислительная техника:

  • CS 135 – Разработка функциональных программ.
  • CS 136 – Разработка алгоритмов и абстракция данных.
  • MATH 135 – Алгебра.
  • MATH 136 – Линейная алгебра 1.
  • MATH 137 – Исчисление 1.
  • MATH 138 – Исчисление 2.
  • Плюс несколько факультативных.

Программное обеспечение:

  • CS 137 – Принципы программирования.
  • CS 138 – Абстракция и реализация данных.
  • MATH 115 – Линейная алгебра для инженерии.
  • MATH 117 – Исчисление 1 для инженерии.
  • МАТЕМАТИКА 119 – Исчисление 2 для инженерии.
  • МАТЕМАТИКА 135 – Высшая математика.
  • ECE 105 – Физика электротехники 1.
  • ECE 106 – Электричество и магнетизм.
  • ECE 124 – Цифровые схемы и системы.
  • ECE 140 – Линейные цепи.
  • SE 101 – Методы разработки программного обеспечения.

Как вы видите, на первом курсе обе специальности очень похожи. Обе рассматривают основные знания по информатике, алгебре и исчислениям. Отличия в том, что на “Программном обеспечении” есть дополнительно физика и электротехника, в то время, как у “Вычислительной техники” еще несколько факультативов.

Обязательные темы второго курса

Теперь рассмотрим предметы второго курса.

Вычислительная техника:

  • MATH 239 – Введение в комбинаторику.
  • STAT 230 – Теория вероятностей.
  • STAT 231 – Статистика.
  • CS 240 – Структуры данных и управление данными.
  • CS 241 – Основы последовательных программ.
  • CS 245 – Логика и вычисления.
  • CS 246 – Разработка объектно-ориентированного программного обеспечения.
  • CS 251 – Организация и дизайн компьютеров.
  • CS 341 – Алгоритмы.
  • CS 350 – Операционные системы.
  • Кроме того, некоторые факультативы по компьютерной науке.
Читайте также:  В какой программе делать слайды для презентации

Программное обеспечение:

  • CHE 102 – Химия для инженеров.
  • ECE 222 – Digital Computers (включая язык ассемблера).
  • ECE 358 – Компьютерные сети.
  • MATH 213 – Высшая математика для инженеров-программистов.
  • MATH 239 – Введение в комбинаторику.
  • STAT 206 – Статистика для разработчиков программного обеспечения.
  • MSCI 261 – Инженерная экономика: финансовый менеджмент для инженеров.
  • CS 241 – Основы последовательных программ.
  • CS 240 – Структуры данных и управление данными.
  • CS 247 – Принципы разработки программного обеспечения.
  • CS 341 – Алгоритмы.
  • CS 349 – Пользовательские интерфейсы.
  • CS 343 – Параллельное и параллельное программирование.
  • CS 348 – Введение в управление базой данных
  • SE 212 – Логика и вычисления
  • SE 350 – Операционные системы
  • SE 465 – Тестирование программного обеспечения и обеспечение качества
  • SE 464 – Разработка и дизайн программного обеспечения
  • SE 463 – Спецификация и анализ требований к программному обеспечению
  • SE 490 – Проектный проект
  • Кроме того, несколько факультативов по информатике и электротехнике.

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

Основные требования обоим направлениям также схожи и рассматривают алгоритмы, структуры данных и операционные системы.

Рассмотрим ключевые различия:

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

И все-таки, что выбрать, чтобы быть инженером-программистом?

Исходя из набора предметов и курсов в этом университете следует, что лучшим выбором будет “Вычислительна техника”, если вы хотите стать инженером-программистом.

Для простоты предположим, что вы надеетесь получить одну из самых высокооплачиваемых работ (

100 000 долларов США в год) в качестве инженера-программиста в Северной Америке. Эти рабочие места обычно находятся в крупных компаниях-разработчиках программного обеспечения (например, Microsoft, Google, Amazon и т. д.). Или в компаниях среднего бизнеса с высокими темпами роста (Dropbox, Lyft, Snapchat, Pinterest и т. д.).

Как правило, они ищут в кандидате на программиста возможность писать хороший код и создавать интересные проекты, а также знание основ компьютерных наук, структур данных и алгоритмов.

Лучший способ активизировать этот набор навыков – быстро изучить основы и тратить свое время на решение проблем и написание кода.

Основываясь на учебной программе для софт-инженера и на занятости инженеров-программистов, это будет сложно сделать на курсе “Программной инженерии”, чем на “Вычислительной технике”.

Еще одно преимущество курса “Вычислительной техники” заключается в том, что она дает больше факультативов. Это здорово, потому что в зависимости от того, что востребовано на рынке труда, вы сможете корректировать свое обучение. Например, если разработка мобильных приложений востребована, вы можете начать ее изучать и т. д.

Несколько примечаний

  • Различные университеты имеют разные требования к этим двум специальностям. Эта статья должна быть хорошей отправной точкой, но вы все равно должны взглянуть на требования к программе в университете, в котором вы заинтересованы.
  • Некоторые университеты даже не имеют такого направления, как “Программной инженерии”. Например, Университет Британской Колумбии в Ванкувере может дать вам степень в вычислительной технике и компьютерной инженерии, но не в программной инженерии. Но у них есть концентрация программного обеспечения в рамках своей программы по вычислительной технике, а также в области компьютерной инженерии.

Заключение

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

Привет, Пикабу!) Хочу попросить помощи у коллективного разума: сейчас мне нужно выбрать свою будущую специальность. Уже давно решила связать свою жизнь с IT, но мне нужно выбрать из двух направлений: "Программная инженерия" и "Информационные системы и технологии". В чём эти специальности различаются, на кого учиться, а потом и работать интереснее? Какая более востребована у работодателей? Возможно, кто-то учился или учится на одной из них, или просто знает их специфику?

Да, знаю что нужно смотреть не на название, а на обр. программу, так как в разных ВУЗах на одной специальность могут учить совершенно разным вещам. В ВУЗе, куда собираюсь поступать про "Программную инженерию" написано следующее:

профиль – Управление разработкой программных проектов;

приобретаемые знания, навыки и умения:

"Подготовка бакалавра включает в себя дисциплины:

Информатика и программирование

Объектно-ориентированное программирование (C#, С++, Java)

Алгоритмы и структуры данных

Управление программными проектами

Разработка и анализ требований к программному обеспечению

Проектирование и архитектура программных систем

Проектирование человеко-машинного интерфейса

Тестирование программного обеспечения

Экономика программной инженерии

Архитектура вычислительных систем

Операционные системы и сети

Интернет-технологии (HTML5, XML, Java, PHP, семантический веб)

Базы данных (MS SQL Server, Oracle, MySQL)

Корпоративные информационные системы

Основы управления IT-услугами

Администрирование в информационных системах.

Информационная безопасность и защита информации.

Математическая логика и теория алгоритмов

Теория автоматов и формальных языков"

Про «Информационные системы и технологии» – есть два профиля:

– Информационные системы и технологии

Технологии программирования (C, Java, .NET, ASP)

Объектно-ориентированное программирование (C#, Java)

Интернет-технологии (XML, Java, Perl, PHP)

Базы данных (MS SQL Server, Oracle, MySQL)

Корпоративные информационные системы.

Читайте также:  Доступ в интернет закрыт опера

Администрирование в информационных системах.

Интеллектуальные информационные системы.

Распределенные компьютерные системы

Разработка приложений в среде 1С

Надежность информационных систем.

Проектирование информационных систем.

Информационная безопасность и защита информации.

– Информационные системы в медиаиндустрии

Объектно-ориентированное программирование (C#, Java)

Интернет-технологии (XML, Java, Perl, PHP)

Базы данных (MS SQL Server, Oracle, MySQL)

Компьютерные средства создания и обработки анимации и видеоизображений: (двумерная и трехмерная мультипликация: Adobe Flash, Toon Boom Studio, Adobe After Effects, , 3D Max, Maya).

Информационные технологии в полиграфии (Adobe PhotoShop, Adobe Indesign, Coral Draw).

Технология изготовления рекламного продукта.

Программные технологии разработки компьютерных игр

Компьютерные технологии создания мультимедийного программного обеспечения

Технологии разработки систем электронной коммерции.

Компьютерные технологии трехмерной графики.

Компьютерные технологии нелинейного монтажа (Adobe Premier)

Компьютерные технологии современных средств массовой информации (телевидения, Интернет, печатных СМИ).

Конечно, выбор стоит передо мной, но не имея ни опыта работы с сфере IT, ни учёбы в ней же, я не могу определить, что лучше. Поэтому ещё раз повторю вопросы: возможно, кто-то знаком с этой сферой, что посоветуете выбрать, что наиболее востребовано сейчас и будет востребовано в будущем? Какая специальность подразумевает больше программирования? Где меньше винтиков-шурупов? Что кажется более интересным?

Заранее спасибо за помощь)

Дубликаты не найдены

как будто профу в ролевой игре выбираешь и даже список скиллов выложил, чтоб подсказали каким набором дальше по сюжету нагибать будет проще)

выбирай что попроще – все равно потом переролливать будешь 😀

Ну так выбор в жизни же важнее выбора в игре) Хочется с пользой образование получить, учиться я люблю)

Программа – это замечательно, но то насколько она будет полезна зависит от конкретных преподов, так что попробуй пообщаться с текущими студентами выбранного ВУЗа имхо это полезнее чем задавать этот вопрос здесь.

Ну и если судить по программе, я бы выбрал первый вариант – он подразумевает больше "фундаментальных дисциплин" и меньше всякой прикладной шелухи, для обучения которой универ нафиг не сдался

Где бы еще этих студентов отловить, я в другом городе живу) Хотя, возможно, стоит поискать ВК. а можно подробнее про фундаментальные дисциплины и прикладную шелуху? Что есть что?

"Алгоритмы и структуры данных

Математическая логика и теория алгоритмов

Теория автоматов и формальных языков"

– это та база которая позволяет понять что такое программа (без этого можно писать код и радоваться жизни, но ровно до тех пор пока хватает готовых инструментов)

"Разработка и анализ требований к программному обеспечению

Тестирование программного обеспечения

Информационная безопасность и защита информации.

Проектирование и архитектура программных систем

Проектирование человеко-машинного интерфейса

Операционные системы и сети"

– просто полезные дисциплины, которые в случае, если их грамотно преподают (что в общем случае скорее всего не так) позволяют сильно сократить срок пребывания на стадии junior-developer и в разы уменьшить количество набитых шишек.

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

"Интернет-технологии (XML, Java, Perl, PHP)

Разработка приложений в среде 1С

Компьютерные средства создания и обработки анимации и видеоизображений: (двумерная и трехмерная мультипликация: Adobe Flash, Toon Boom Studio, Adobe After Effects, , 3D Max, Maya).

Информационные технологии в полиграфии (Adobe PhotoShop, Adobe Indesign, Coral Draw).

Компьютерные технологии создания мультимедийного программного обеспечения

Технологии разработки систем электронной коммерции.

Компьютерные технологии трехмерной графики.

Компьютерные технологии нелинейного монтажа (Adobe Premier)"

– это на чем в принципе можно сразу делать деньги (опять же при условии грамотного преподавания)

Но! Если дискретка и алгоритмы развиваются относительно медленно и учебники выпущенные в прошлом веке актуальности не потеряли) то все дисциплины из второй категории должен преподавать человек, который реально этим зарабатывает на жизнь. Потому что даже позапрошлогодний материал зачастую на рынке уже не котируется. + Во всех прикладных технологиях нет ничего сверхъестественного и их вполне себе можно выучить самостоятельно/с помощью коллег

Потому что даже позапрошлогодний материал зачастую на рынке уже не котируется.

Есть реальный пример? По-моему, лучше взять цифру в 5-7 лет. Вот не успеют за два года создать с нуля какой-то стандарт, который сделает достаточно неактуальным один из пунктов в программах обучения выше. Даже если он появится, то все-равно пройдет большое время, прежде чем приживется везде, а пока будет рассматриваться лишь как бонус.

все дисциплины из второй категории должен преподавать человек, который реально этим зарабатывает на жизнь

Вообще, человек, который зарабатывает этим на жизнь и имеет склонность к преподаванию, обычно читает доклады на каких-нибудь конференциях, либо ведет тренинги: потому что разработчиков тоже должен кто-то обучать (и это логично). А студентам такую роскошь даже в топовых вузах редко подгонят, а даже если и так – им все-равно будет зачитан стандартный материал по программе курса, "шокирующие открытия программирования" в ней не упоминаются, да и еще не будут поняты.

Все это достаточно далеко от класстических направлений для подгототовки стронг-программистов.

Но если по жизни, то главное – получить магистра на любой срециальности, близкой к CS. Причем, это справедливо как у нас, так и "там".

Из озвученных лично знаю, как готовят ИСиТ. Пусть это и полуадмины, но все-таки технари. В сравнении с менеджментом и какой-то медиа-ерундой – они ближе к теме.

мой вам совет – не ведитесь. спросите у выпускников этих спецух – чо да как, как с фиолософией дела (?!). Там понапишут булщита, а по факту – фиг. На моей спецухе была java например в брошюре, – ее не было; был, o_GOD, delphi.

мне наоборот вторая больше по душе пришлась. хотя и первая, и вторая содержат не очень нужные имхо предметы, вроде Управления программными проектами или Программирования 1С.

Читайте также:  Датакам g5 city max

По поводу второй специальности: программирования очень много. Знания даются самые разнообразные, думаю, что к окончанию можно выбрать наиболее полюбившееся направления.

Я бы за инженерию, там штуки всякие поприкольнее. Учиться все равно будешь не на учебе (странно звучит).

А работодателям вроде как пофиг вообще, какой диплом.

FROSTY: я понимаю, что инженер – это, конечно, тру, он здания может захватывать и всякие постройки чинить, но на 3 курсе тот еще гемор обещали.

Нормальным работодателям не пофиг. Да и по карьере расти легче будет.

А почему ИС больше котируется у работодателей? Конечно, понятно, что многое придется учить самостоятельно, но основы то тоже имеют значение.

То что написано ниже – ложь и провокация (возможно такое отношение имеет место для каких-то контор застрявших в прошлом веке, но зачем туда стремится – не понятно.)

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

И вообще, если смотреть формально на диплом, то важна не специальность, а то, что написано в графе квалификация.

1. упор в программирование всяких заумных сложных штук, больше базовых вещей, лежащих в основе всего

2. больше упор на интернет технологии

3. упор на работу с медиа-контентом

1 – программирование всяких заумных сложных штук – а можно поподробнее? Пример таких штук?

2, 3 – сам профиль, как я поняла, выбирается позже, но всё-таки: интернет- технологии – это написание именно сайтов, и близкого к ним?

Если отбросить общие предметы:

1) придумай (!) (обращаю внимание, что готового решения нет нигде и ни у кого, а если и есть, то это для ребят из пункта 2) и сделай суперсложный алгоритм, который работает за О(какое-то n), в клиническом случае еще и докажи это

2) найди готовое решение и грамотно прикрути его к нашему проекту (придумывать отсебятину можно, но возбраняется, так как времени нет). вообще, постоянно нужно что-то автоматизировать.

3) нарисуй интерфейс и напиши controller (кликаешь по элементам дизайна и что-то происходит).

Правда? Это плохо( Я хочу именно создавать программы.

Если хотите программировать, ваш путь – МОАИС (Математическое обеспечение и администрирование информационных систем), полная компетенция в программировании. Вообще, если хотите программировать не цепляйтесь за слово "программный/ая/ое" в названии специальности, самое главное для вас – математические алгоритмы, цепляйтесь за слово "математический/ая/ое", либо просто "математика".
Немного про МОАИС, дабы избежать будущих вопросов. Обычно за 4 года изучается как минимум 3 ЯП (например: C++, C#, Lisp, или C++, Java, Python), основы разработки и администрирования БД, сетевые технологии, приложения "клиент-сервер" и "клиент – сервер приложений – сервер БД", параллельное программирование. В целом обучение дает понимание программирования – в будущем вы будете способны за пару месяцев изучить абсолютно любой ЯП, также будете понимать принципы работы любой программы и принципы решения любых вычислительных задач.

Мне вот тоже походу грозит такая неприятность. Но я данную проблему вижу и постараюсь обойти.

Сужу с позиции java junior =)

Объектно-ориентированное программирование (C#, Java)

Интернет-технологии (XML, Java, Perl, PHP)

Базы данных (MS SQL Server, Oracle, MySQL)

Это самое главное, и присутствует во всех планах, что хорошо.

В первом плане очень много "матана", учился два курса по похожей программе, а потом сменил направление. Чего только стоит Математическая логика и теория алгоритмов, на которой я с пересдач не слезал. Причем функциональному программированию (считаю, что если и забивать голову наукой обычному программисту, а не ученому, то лишь ради этого), на котором действительно РАЗРАБАТЫВАЮТ проекты, НЕ научат, хорошо еще если соответствующие новинки в Java 8 покажут. Сейчас я думаю, а зачем вообще в курсе эта теоретическая фигня, если даже про Haskell или Lisp ни словом не обмолвились, и теперь мне самому придется это осваивать?

В третьем плане, как я понял, учат "фотошопить". Зачем это нужно айтишнику?

Во втором плане как раз наблюдается определенный баланс и рекомендую именно его. Спокойно изучишь все термины айтишного мира, определишься, что интересно разрабатывать и разберешься в соответствующей предметной области (в плане программной инженерии предполагается, что выбранной предметной областью является "матан").

Математику я очень люблю) Поэтому её обилие – не проблема, лишь бы это было не в ущерб программированию.

А по какой программе вы учились?

Я учусь (все еще =( ) по программе "Прикладная математика и физика", просто сейчас сменил факультет на более физический и благодаря этому совмещаю с работой программиста.

Математика – это не "матан". Вообще, курс математического анализа довольно интересный и действительно расширяет школьные представления математики (когда нужно решить некоторый набор практических задач, а не доказывать теоремы), а вот в этот знаковый и собирательный термин "матан" я заложил набор тех мучительных чувств, когда нужно понять, что же имел ввиду автор, когда математическими значками описал то, что видел под веществами =) Расшифровать его абстракцию, разумеется, гениальную – нелегкий труд. ВО МНОГОМ ПОТОМУ, ЧТО В ИНТЕРНЕТЕ ПО БОЛЕЕ-МЕНЕЕ СЛОЖНОМУ МАТЕМАТИЧЕСКОМУ ВОПРОСУ НЕТ ДОСТУПНЫХ МАТЕРИАЛОВ. Это не программерские штучки, которые разжевали на каждом углу. Надо внимательно просмотреть учебные материалы соответствующих предметов и иметь талант, прежде чем подписываться на такое. Программирование – такое же собирательное понятие, но "матан" не учит программированию, а только отнимет много времени (когда работать-то?)

admin

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *