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

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

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

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

У меня также было несколько других курсов, которые действительно принесли мне пользу в моей роли инженера-программиста. Одним из таких курсов был «Взаимодействие человека с компьютером», который научил меня некоторым основам дизайна пользовательского интерфейса. Еще одним был годовой проектный курс, на котором мы смогли объединить все этапы жизненного цикла разработки программного обеспечения. Кроме того, у нас был курс по управлению проектами, на котором я узнал все о том, как определяются масштабы, планирование и управление программными проектами. Оглядываясь назад, каждый из этих курсов дал мне очень реальное понимание того, о чем я буду думать и чем буду заниматься в своей повседневной работе.

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

Лично мне очень понравилась степень инженера-программиста, и я очень доволен своим выбором! Когда мой профессор колледжа убедил меня присоединиться к его новой программе разработки программного обеспечения, он сделал довольно смелое заявление, что его студенты будут чувствовать себя комфортно на своей первой инженерной работе через несколько месяцев. Мой личный опыт, казалось, подтверждал это утверждение. Понимание жизненного цикла разработки программного обеспечения и таких концепций, как scrum, было очень полезным для меня, когда я начинал свою первую работу. Хотя я узнал об этих концепциях во время стажировок, я рад, что у меня было больше времени, чтобы освоиться с этими идеями в течение учебного года. В целом, я доволен своим решением и определенно рекомендую учебную программу по программной инженерии для всех студентов, серьезно рассматривающих программную инженерию как профессию!

Спасибо за прочтение.