Программные системы компьютерного инжиниринга что это
Компьютерный инжиниринг это совокупность методов и средств практического решения инженерных задач с помощью компьютерной техники и прикладных информационных технологий, среди которых особое место занимают системы автоматизированного проектирования.
Повышенный интерес к проблемам автоматизации производственной деятельности посредством САПР проявляют предприятия и организации практически всех отраслей науки и производства. Их разработке и профессиональному применению придается первостепенное значение как за рубежом, так и в России, поскольку автоматизация проектирования является неотъемлемой составной частью приоритетных направлений научно-технического прогресса электронизации и комплексной автоматизации машино- и приборостроения. От успехов в создании и развитии САПР во многом зависят и сроки разработки образцов новой техники, и внедрение интегрированных автоматизированных производств, и рост производительности труда инженерно-технических работников.
Компьютерная техника и САПР предоставляют более производительные и эффективные методы геометрического моделирования объектов, широкие возможности баз данных и баз знаний. Без современных САПР сегодня уже невозможно проектирование сверхсложных изделий, так как они на высоком качественном уровне позволяют справляться с конструкторскими, расчетными и технологическими задачами. Представление знаний в системах искусственного интеллекта, к которым относятся и САПР, является одной из центральных проблем в процессе глобальной информатизации, поскольку информационные технологии могут эффективно имитировать поведение человека в той или иной области деятельности. В известной книге «Искусственный интеллект» А.Эндрю пишет: «Искусственный интеллект это область исследований, направленных на то, чтобы заставить машины выполнять функции, которые… способны выполнять люди». В активной информационной деятельности инженера компьютер и САПР являются интеллектуальными субъектами взаимодействия с ним, его партнерами и ближайшими помощниками. Поэтому использование новых информационных технологий САПР в инженерном образовании становится, по существу, социально-экономической потребностью, а использование графических навыков без знания информационных технологий сегодня уже невозможно. Таким образом, цель информатизации системы образования состоит во всеобъемлющей рационализации интеллектуальной деятельности за счет внедрения новых информационных технологий, в радикальном повышении эффективности и качества подготовки специалистов.
Рис. 1. Детандер — опытно-конструкторская работа группы студентов СГФТА, вошедшая в число десяти лучших работ в конкурсе, проводимом компанией PTC в США
В числе главных достоинств высококлассных САПР машиностроительной ориентации возможность виртуального параметрического 3D-моделирования деталей и сборочных узлов, полная ассоциативность, обеспечивающая мгновенное получение безошибочных аксонометрических и двумерных проекционных изображений созданных электронных моделей реальных изделий и обеспечение высокого стандартного качества чертежно-конструкторской документации.
В последние два десятилетия в высшей профессиональной школе постоянно ведутся работы по использованию современных технических компьютерных средств и новых информационных технологий при подготовке будущих инженеров. Передовой опыт информатизации и компьютеризации образования показывает явно выраженную тенденцию обучение студентов практическим аспектам новых информационных технологий и их применению в будущей профессиональной деятельности. Поэтому практически во всех технических вузах сегодня уже введены прикладные дисциплины, в зависимости от функциональной направленности применяемых в учебном процессе САПР, для обучения навыкам использования этих систем в будущей учебной и профессиональной деятельности. В одном учебном заведении для профессиональной подготовки студентов может использоваться целый комплекс систем автоматизированного проектирования различного назначения, причем во многих технических вузах применяются самые мощные интеллектуальные САПР параметрические, многомодульные, объектно-ориентированные, полифункциональные комплексные системы, способные заменить несколько систем узкоспециального назначения. С появлением таких САПР в образовательном процессе субъективные аспекты компьютерной техники (в качестве объектов освоения) стали определяться взаимообусловленной совместной деятельностью: организационно-методической со стороны педагога и учебно-профессиональной со стороны студентов. Такая работа направлена на достижение конкретных целей подготовки будущих специалистов с помощью обучения компьютерному проектированию.
Сегодня для всех очевидно, что профессиональная школа при выборе программных продуктов должна ориентироваться на реализацию прикладных функций НИТ. Каждому техническому вузу следует стремиться освоить и использовать мощный системный программный пакет, обеспечивающий трехмерное параметрическое моделирование. Выбор программных продуктов для использования в образовательных процессах каждого вуза должен основываться на том, чтобы подготовка специалистов велась в русле профессиональной направленности обучения.
Студенты Снежинской государственной физико-технической академии (СГФТА) имеют возможность освоить такие общепризнанные конструкторские системы среднего уровня, как SolidWorks, AutoCAD, КОМПАС, T-Flex, а также получивший мировую известность высококлассный программный продукт компании Parametric Technology Corporation Pro/ENGINEER. При этом приоритет отдается именно системе Pro/ENGINEER, поскольку более высокое качество информационных технологий автоматизированного проектирования подразумевает и более высокий уровень подготовки будущих специалистов. Системы автоматизированного проектирования используются в графической подготовке студентов СГФТА и как объект изучения, и как современное эффективное средство конструирования электронных моделей реальных изделий, а также служат для решения ряда педагогических задач. Возможности параметрического виртуального моделирования изделий любой сложности и реалистичность визуализации этой САПР представляют собой педагогический потенциал, который при создании определенных условий способствует не только приобретению знаний, умений и навыков автоматизированного конструирования, но и формированию творческих способностей, воображения, образно-графического и технического мышления, а также повышению инженерно-графической и информационной культуры студентов. Конструкторская направленность систем автоматизированного проектирования определила их место в числе общеинженерных дисциплин в первую очередь при графической подготовке и при изучении основ автоматизированного проектирования, а затем и при работе над курсовыми и дипломными проектами по конструкторско-технологическим специальностям.
Рис. 2. Курсовая работа студента Семена Подгорнова «Проектирование поверхностей сложной аэродинамической формы», представленная на 6-й всероссийский конкурс «Компьютерный инжиниринг»
Необходимость обучения студентов работе с интеллектуальными интерактивными системами автоматизированного проектирования продиктована современными квалификационными требованиями к молодым специалистам. Наличие множества проблем в российской экономике, производстве, науке, образовании и общественных отношениях на фоне достижений развитых стран мира требует переосмысления главных целей и задач отечественной профессиональной педагогики и пересмотра основополагающих требований к подготовке будущего инженера. В соответствии с образовательными концепциями нашего времени уровень профессиональной квалификации современного выпускника технического вуза прежде всего подразумевает его способность творчески решать задачи по созданию новой техники, по разработке высоких технологий, по оптимальной организации производства в условиях глобальной информатизации. А поскольку традиционная методика вузовской графической подготовки не обеспечивает надлежащих навыков конструирования, то крайне необходимо создавать новые эффективные технологии для обучения будущих специалистов конструированию на основе использования функциональных возможностей САПР, причем с выходом на конкретные технические решения. Опыт показывает, что полученных в студенческие годы знаний и умений, как правило, недостаточно для выполнения самостоятельных конструкторских работ, что приводит к длительной адаптации молодого специалиста к конкретным производственным условиям. Из этого следует, что изучение инженерно-графических дисциплин должно проводиться в атмосфере технического творчества, высшим проявлением которого является изобретательство. К тому же внедрение в образовательный процесс конструкторско-графических САПР переводит техническое творчество студентов в виртуальную область, когда творческие возможности вообще не имеют границ. Этому способствует и проведение различных конкурсов по компьютерному моделированию и графике среди студенческой молодежи, которые значительно активизируют учебно-познавательную и учебно-профессиональную деятельность студентов по освоению функциональных возможностей САПР (работы студентов СГФТА, приведенные на рис. 1-3, были представлены на всероссийских и международных конкурсах).
Конструкторская работа является одним из самых интересных направлений в творческой деятельности человека. В советские времена многие учащиеся были вовлечены в конструкторскую деятельность, но впоследствии данное направление не получило должного развития. Кроме того, за это время значительно изменились профессиональные и ценностные ориентиры в обществе, трансформировались личностные качества подрастающего поколения, в том числе студенческой молодежи. Чтобы устранить противоречия между современными квалификационными требованиями к выпускникам технических вузов и имеющимся уровнем инженерной подготовки молодежи нового поколения, профессорско-преподавательский состав СГФТА пытается внести свой вклад в решение комплексной проблемы обучения студентов младших курсов основам конструирования и формирования у них профессиональных качеств будущего специалиста.
Рис. 3. Работа студентов СГФТА, выполненная средствами САПР Pro/ENGINEER
Мы занимаемся разработкой вопросов о мотивации изучения конструкторско-графических дисциплин на базе интеллектуальных САПР, основываясь на принципах интенсификации познавательной и учебно-профессиональной деятельности студентов, овладевающих интеллектуальными компьютерными инженерными системами автоматизированного проектирования. Это обеспечивается виртуально и реально реализуемой технической идеей, вызывающей эмоциональный подъем и высокую работоспособность студентов. Поэтому при подборе задач для упражнений по обучению работе с САПР мы считаем очень важным, чтобы такие упражнения сочетали в себе подражательную и творческую деятельность, требовали от студентов хорошего пространственного представления, сообразительности, размышлений, ориентируя студентов на поиски собственных путей решения той или иной задачи (см. рис. 2). Если в основе овладевания знаниями и умениями путем тренировочных упражнений учащихся лежит лишь воспроизводящая деятельность, то это не только не способствует, но порой даже тормозит их умственное развитие. Развивающий характер упражнения носят лишь тогда, когда содержат творческие идеи, реализация которых требует от студентов оригинальных идей и самостоятельности мышления.
С педагогической точки зрения существенное значение имеют подходы к формам организации и методам аудиторной работы студентов с преподавателем, а также самостоятельной работы студентов. Работы, связанные с обучением студентов основам конструирования, должны быть в значительной мере самостоятельными, а коллективная работа должна предусматривать личную ответственность каждого студента за порученную ему часть общего дела. Совместная деятельность не только помогает учащимся легче усваивать необходимый материал, но и является необходимым условием последующей инженерной практики, ибо формирует такие качества, как профессиональное достоинство, обязательность, организованность, коммуникабельность, способность переживать за общее дело. В процессе самостоятельной учебно-профессиональной деятельности, подкрепляемой закономерным интересом учащихся к компьютерным системам автоматизированного проектирования как ко всему новому, закладываются основы для творческого и культурного саморазвития будущих специалистов.
Сегодня студенты СГФТА могут на высоком уровне выполнять заказы производства по дву- и трехмерному моделированию средствами САПР. Это подтверждено на деле. Так, на рис. 1 изображена трехмерная виртуальная модель детандера, главного функционального компонента автономной мини-электростанции, модель и полный комплект чертежей к которой были созданы группой студентов СГФТА средствами САПР Pro/ENGINEER.
Следует привести еще один пример. Особенность и новизна работы по созданию учебных пособий по начертательной геометрии заключается в том, что выполнена она самыми младшими студентами средствами инженерной САПР в учебном процессе, ассоциируемом с учебно-познавательной и учебно-профессиональной деятельностью. Практическая значимость работы заключается в применении учебных пособий для облегчения освоения студентами трудной, но очень важной фундаментальной инженерной дисциплины, а также в ее личностно-формирующей ориентации.
Татьяна Чемоданова
Доцент Снежинской государственной физико-технической академии, канд. пед. наук.
Как только сегодня ни называют программистов, особенно в зарубежных СМИ. Да и у нас, в частности, при поиске работы, можно встретить абсолютно разные описания должностных обязанностей.
Меняется ли от этого суть работы? Мы в 1cloud попробовали разобраться в том, какую работу подразумевают такие специализации как «Programmer», «Software Engineer» и «Computer Scientist».
Преимущества и недостатки профессии
Как и любая другая профессия, множество недостатков и преимуществ содержит в себе и программная инженерия. Что это за профессия? Открытие системы, которая получила соответствующее наименование, произошло совсем недавно. И все же, основные плюсы и минусы рассматриваемой специальности очень четко можно проследить уже сейчас. О том, чего же все-таки больше - преимуществ или недостатков, будет рассказано далее.
Стоит начать с преимуществ профессии. К ним относятся:
- Хорошая заработная плата. Конечно же, все зависит от предприятия, региона, и даже государства. Например, в европейских странах качественный специалист в сфере программной инженерии получает около 10 тыс. $, в России - от 25 тыс. до 60 тыс. рублей.
- Высокая востребованность. Как минимум, на протяжении еще пары десятков лет сфера программной инженерии останется очень востребованной. Выпускники ВУЗов смогут с легкостью найти себе рабочее место.
- Творческая составляющая в профессии. Этот пункт для некоторых людей, наверное, самый важный. Ведь действительно: что может быть лучше работы, в которой можно проявить себя с самой положительной стороны?
Однако есть у профессии и недостатки. Пускай их совсем немного, многие работники все-таки ощущают их влияние на рабочий процесс. Сюда относятся:
- Высокая ответственность. Все поставленные начальством задачи необходимо решать качественно и быстро.
- Большая загруженность. Зачастую специалисты действительно могут не успевать ведь работы оказывается слишком много.
Таким образом, программная инженерия - это престижная, высокооплачиваемая, и, самое важное, очень интересная работа.
Обязанности программного инженера
Как и любой другой работник, программный инженер имеет множество функций и обязанностей.
Можно выделить лишь самые основные, наиболее часто задействованные во время рабочего процесса функции.
- Работы по проектированию программного обеспечения. Сюда относится сбор определенных данных и их анализ.
- Разработка определенных алгоритмов и приемов, благодаря которым можно решать разного рода задачи.
- Работа с рядом проектных решений при концептуальном программировании. В большинстве случаев, это проведение технического и экономического обоснования.
- Разработка программного обеспечения при помощи различных алгоритмических языков.
- Реализация распределенных информационных систем при помощи сервисов Веб и интернет-технологий.
- Проверка реализуемых проектов на соответствие заданным нормам, стандартам и установкам.
- Разработка документации - рабочей и программной.
- Работы по обслуживанию аппаратно-программных средств, а также инсталляция, проверка, настройка и обслуживание различных программ.
Таким образом, довольно большое количество различных сфер деятельности включает в себя программная инженерия.
Что это за профессия, где на одного работника ложится столько функций? Многих людей мучает именно этот вопрос, а также проблема трудоустройства. Об этом и пойдет речь далее.
Требования к программному инженеру
Невероятно сложной и многообразной считается программная инженерия. Что это за профессия и специальность, в которой к работникам предъявляются особые, совершенно специфические требования?
Как и любой другой работник, представитель рассматриваемой профессии обладает довольно большим спектром обязанностей и функций. Именно из-за этого к программному специалисту предъявляется ряд требований. Стоит отметить, что далеко не каждый человек этим требованиям может отвечать. Необходимо привести некоторые основные качества и черты характера, которыми должен обладать грамотный специалист.
Во-первых, это умение качественно мыслить. Речь здесь идет об абстрактном и системном видах мышления. Вряд ли стоит даже упоминать о том, насколько важно обладать таким мышлением программному инженеру. Во-вторых, это оперативность. Зачастую именно представители рассматриваемой профессии обращаются к тайм-менеджменту или другим подобным формам планирования своего времени. И не зря: зачастую специалистам приходится выполнять невероятно большое количество функций в очень сжатые сроки.
Конечно же, стоит упомянуть и о других немаловажных качествах, которые должны быть присущи программному инженеру: это внимательность, усидчивость, терпеливость стрессоустойчивость, целеустремленность и т. д.
Терминология
Изучение сути вопроса логично начать с понимания терминов. Самым понятным является «Programmer», который в Оксфордском словаре определяется как человек, ответственный за написание программы. И с переводом все просто: программист – он и в Африке программист. И даже в России. Сложности начинаются дальше.
«Software Engineer» (SE) (согласно статье в webopedia) — это дипломированный профессиональный инженер, имеющий достаточно знаний и навыков для применения инженерных дисциплин при создании программного обеспечения. Главное отличие — SE занимается разработкой, руководством проектов, а программист их реализует путем написания кода. На русский название должности переводится как «инженер-программист» или просто «программист».
Теперь разберемся с тем, кто такой «Computer Scientist» (CS). Если верить словарю, то речь идет о работе в области теории вычислений и проектирования компьютеров. Разные словари дают разный перевод на русский: «учёный, работающий в области теории вычислительных машин и систем (в области ВТ, в области компьютерных наук)» или «программист».
Итого, имеем три очень разных определения в английском и три «программиста» в русском.
Что должен знать программный инженер?
Очень обширной и сложной считается профессиональная сфера, имеющая название "программная инженерия". Что это за профессия, где необходимо обладать невероятно большим запасом знаний?
Какие именно дисциплины необходимо освоить во время обучения? На эти вопросы будут даны ответы далее.
Грамотный специалист в сфере программной инженерии обязан обладать качественными знаниями в следующих научных областях:
- Математика и инженерия.
- Информатика, технологии и средства разработки.
- Моделирование и его спецификации.
- Разработка программного обеспечения.
- Аттестация и верификация ПО.
- Профессионально-трудовая практика.
- Программные проекты.
И множество других научных и профессиональных дисциплин. Осваивая рассматриваемую специальность в высшем учебном учреждении, будущий программный инженер должен будет иметь дело со всеми вышеперечисленными предметами. А что можно сказать о самом обучении?
Как сами программисты понимают эту разницу
Западный подход довольно четко разграничивает все три должности. Но у нас часто возникает путаница, и все три понятия используются как взаимозаменяемые. Поэтому лучше обратиться к мнению самих программистов и посмотреть, как они описывают свою деятельность.
Для обеспечения полноценной разработки ПО/кода программист должен быть сконцентрирован на своей работе и обеспечить последующее использование и интеграцию программных компонентов друг с другом. Энтони Щерба (Anthony Scherba), президент и основатель студии разработки Yeti, сравнивает этот процесс с решением сложной алгебраической задачи.
Так, по мнению эксперта, в обязанности программиста входит создание, упрощение, документирование кода и написание тестов. Поскольку он занимается практической реализацией поставленных задач, программист должен разбираться в особенностях языка (языков) программирования, с которыми работает, а также в теории алгоритмов.
Необязательные компетенции: математический анализ, коммуникативные навыки и умение работать в команде — подробнее в блоге Алана Скоркина (Alan Skorkin).
Работа «Software Engineer» подразумевает комплексный подход и иногда ее можно сравнить даже с процессом создания произведения искусства, которое программист старается постоянно усовершенствовать. Так считает и Дэниел Каплан (Daniel Kaplan), опытный программист и сотрудник Pivotal Labs.
Инженер должен видеть всю картину с двух сторон: проект в соответствии с общим планом и отдельные задачи, необходимые для его осуществления. Он должен уметь находить верные комплексные решения, понимать требования клиентов, прогнозировать возможные последствия и распределять задачи по программированию (в команде).
Его работа особенно важна во время разработки новых версий или функциональных возможностей продукта или, например, когда клиент меняет свои требования. Таким образом, инженер-программист отвечает не просто за написание кода, а за весь проект.
«Computer Scientist» — математик и технический специалист в равной степени. Он обладает математическими знаниями и объясняет, как и почему работает тот или иной инструмент, решение или алгоритм. Его работа имеет большое значение для развития программирования в целом. Также CS свойственна специализация в одной или нескольких сферах — ИИ, нейронные сети, теория языков программирования, базы данных.
Представления профессионалов в принципе соотносятся со словарными статьями, что естественно: на то они и профессионалы, чтобы разбираться в своей работе. Сбой в коммуникации и подмена понятий явно происходит на каком-то другом уровне, но на каком?
Обучение профессии
В настоящее время все больше молодых людей решают пройти обучение по специальности "программная инженерия".
Что это за работа, считающаяся одной из самых актуальных и востребованных? Именно этим вопросом задается почти каждый человек, желающий освоить рассматриваемую профессию. Конечно же, получить должное для работы образование будет не так уж и просто. Обо всех тонкостях обучения специальности "программная инженерия" будет рассказано далее.
Первое, о чем следует сказать - это необходимые для поступления экзамены. Помимо русского языка и математики высшие учебные учреждения могут потребовать с абитуриента баллы по физике, информатике или химии. Некоторым ВУЗам необходим иностранный язык. Поступающий в университет человек способен выбрать один из трех основных профилей:
- разработка и сопровождение программной продукции;
- программно-информационные системы и их разработка;
- виды инструментальных средств для эффективной разработки программной продукции.
Чтобы получить диплом бакалавра, потребуется отучиться не менее четырех лет. Полученный же диплом позволит выпускнику разрабатывать различного рода программную продукцию и вводить ее в эксплуатацию.
Довольно много неясных моментов содержит в себе программная инженерия. Что это за профессия? Кем можно работать? Насколько эта сфера престижна? На большинство из представленных вопросов будут даны ответы при получении должного образования.
Два основных мифа о профессии
Программная инженерия - сфера довольно новая, появившаяся совсем недавно. Поэтому неудивительно, что некоторые не очень хорошо проинформированные люди распространяют о рассматриваемой профессии многие слухи и мифы. Пожалуй, стоит уделить чуть большее внимания самому понятию "программная инженерия". Что это за профессия, или миф, как ее называют некоторые личности?
Собственно, утверждение, что сфера программной инженерии является "ненастоящей" - и есть первый миф о профессии. Причем опровергнуть это явно лживое утверждение будет совсем не сложно. Стоит только посмотреть список специальностей в ВУЗах, расспросить грамотных программистов, и даже просто найти нужную информацию в интернете - сразу же станет ясно, что рассматриваемая сфера вполне себе реальная и не имеющая аналогов.
Следующий весьма распространенный миф о профессии звучит следующим образом: "вся новая программная продукция в сфере программной инженерии совершенно не нужна на производстве, и может понадобиться разве что преподавателям". Конечно же, это совсем не так. Причем не стоит отрицать, что многие университеты, дабы повысить свой статус, действительно вводят в учебный план изучение сложных программ. Однако стоит учесть, что множество сегментов рынка действительно нуждаются в постоянном обновлении программного обеспечения.
Что такое программная инженерия и кто такой программный инженер?
Программная инженерия — это область, которая занимается созданием и вводом в эксплуатацию нового программного обеспечения. «Так это простые разработчики?» — спросите вы. Пу сути, вы окажетесь правы , т олько программная инженерия подразумевает более серьезный подход, нежели просто разработка продукта. Профессионал, который занимается программной инженерией , именуется программным инженером.
Программный инженер грамотно продумывает весь путь создания программного продукта. Он начинает исследования еще задолго до создания самого продукта. У него четко прописан план, что и когда делать, что и когда должно быть готово. Он «видит» , каким будет продукт через 5 или 10 лет. К примеру, программный инженер «продумывает» Windows 12 (11-версия уже вышла в августе 2021 года), а разработчики ее делают.
Вот и получается, что программная инженерия присуща крупным компаниям-разработчикам программного обеспечения. Они заранее все продумывают, планируют и знают , как достичь результат а . Программный инженер «выше» просто го разработчик а . В разработчики может войти каждый, а в программную инженерию нужно постараться, чтобы войти.
Самые распространенные мифы
Как уже было сказано, рассматриваемая профессия считается новой, так как появилась она совсем недавно. И именно из-за этого данная специальность обросла большим количеством мифов и стереотипов. Дабы не оказаться введенным в заблуждение, стоит разобрать основные стереотипы, которые навлекает на себя программная инженерия.
Что это за профессия? Кем работать? Пожалуй, это основные вопросы, которыми задаются люди, желающие правильно выбрать свою будущую работу. Но, как ни странно, большинство людей при выборе профессии руководствуются еще и чем-то более глобальным. Они желают знать, принесет ли их будущий труд хоть какую-то пользу обществу. И именно здесь рождается еще один стереотип о программной инженерии: якобы, большинство разрабатываемых программ будут совершенно бесполезны, и не помогут преодолеть кризис в отрасли разработки программной продукции. Но и не стоит утверждать, что рассматриваемая профессия будет настоящей панацеей. Однако поэтапный выход из кризиса будет обеспечен совершенно точно.
Следующий миф о профессии гласит, что учебные часы по программной инженерии для обучающихся на младших курсах слишком малы, и, можно сказать, бесполезны. Данный миф связан с некоторыми компаниями, безосновательно сделавшими подобный вывод. Однако множество исследований, представленных, в том числе, и самими университетами, показывают, что количество учебных часов является оптимальным, и все необходимые знания ученикам будут даны.
Карьера программного инженера
Одним из достоинств рассматриваемой профессии является возможность качественного и скорого карьерного роста. Далее будет рассказано о том, какие возможности для повышения своих профессиональных навыков имеет программная инженерия.
Что это за профессия? Кем работать придется на начальных этапах и есть ли возможность подниматься по карьерной лестнице? Именно этими вопросами задается большинство людей, собирающихся посвятить свою жизнь программной инженерии. Действительно: есть ли возможность качественно вырасти как специалисту в рассматриваемой трудовой сфере? Конечно же, такие возможности имеются. На первых порах выпускнику университета придется поработать простым стажером. Однако в недалеком будущем у него может появиться возможность повысить свой статус до штатного программиста среднего уровня. Приложив должные усилия, штатный может дорасти до ведущего программиста. Стоит отметить, что ведущие специалисты в сфере программной инженерии могут получать заработную плату до 3 000$. Конечно же, должность ведущего программиста - не предел. Существует реальная возможность занять руководящую должность по какому-нибудь крупному проекту. В этом случае начальство предприятия может предложить место в руководстве.
Таким образом, карьерная лестница в сфере программной инженерии, конечно же, присутствует. И подняться по ней вполне реально.
Какую разницу видят учебные заведения и работодатели
Начнем опять с «программиста». Еще одно его важное отличие от всех остальных: как правило, отучившись в профильном ВУЗе, вчерашний студент становится не просто «программистом», а «инженером/бакалавром/магистром по специальности/направлению…».
Для западной образовательной системы это тоже характерно — взгляните, к примеру, на разнообразие специальностей в направлении «Software Development and Programming» Сиднейского Технологического Университета. Ни одна из них не содержит в своем названии слова «programmer» или «programming».
Нет, конечно, многие университеты предлагают курсы по программированию (даже бесплатные), но редко когда в дипломе написано просто «программист». А что хотят видеть работодатели?
Помимо знания разных языков и/или опыта работы на разных мобильных платформах/ опыта веб-программирования/ администрирования, программисту нельзя обойтись без коммуникативных навыков (примеры тут и тут). В приведенных примерах вакансий требуется навык работы в команде, предполагается общение с вендорами, сотрудничество с другими отделами компании и техническим директором. Ну и организаторские и управленческие способности будут нелишними. А в ряде случаев нужны еще и достаточно глубокие знания математики.
Требования на российском рынке отличаются не сильно и включают разработку проектов, работу в команде, понимание принципов информационной безопасности (и всё те же навыки, отмеченные в абзаце выше). Таким образом, работодатели хотят видеть в программисте универсального (и творчески мыслящего) специалиста, а не просто человека, который пишет и тестирует код на определенном языке, решая кем-то поставленную задачу. Получается, что работодатель (как на Западе, так и у нас) под «программистом» очень часто понимает то, что словари обозначают как минимум как «Software Engineer».
Образовательные программы по профилю «Software Engineering» подразумевают, подход к разработке ПО с научной и инженерной точки зрения, разработку собственных проектов, аналитическую и управленческую деятельность. Помните, в предыдущем разделе эксперты говорили, что SE должен уметь реагировать на изменяющиеся требования? На магистерской программе помимо этого объясняют, как укладываться в бюджет и сроки.
В университете Глазго учат определять технические характеристики, проектировать, создавать и верифицировать крупные программные системы. При этом список предметов включает программирование на разных языках, проектирование баз данных, изучение алгоритмов, то есть все те знания, которые необходимы и для работы «классического программиста».
Что касается точки зрения работодателей, то по их мнению в обязанности инженера-программиста входит написание кода, проверка технической реализации UI/UX, оптимизация работы приложений, разработка внутренней методологии и стандартов, контроль и управление требованиями. Кроме того, соискатель должен обладать лидерскими качествами. Технические требования не сильно отличаются от требований к «обычным» программистам: их примеры можно посмотреть тут: 1, 2 и 3.
Университетские программы по направлению «Computer Science» включают больше математических предметов, изучение теории алгоритмов, а также такие темы как машинное обучение, нейронные сети и облачные вычисления. Студенты изучают больше теории, но должны успешно применять на практике полученные математические знания, выявлять, формулировать и решать инженерные проблемы. Таким образом, у этого типа специалистов формируется наибольшая «широта взглядов» — в теории он может работать и программистом, и SE, и непосредственно по специальности.
Это не означает, что полученных знаний ему «за глаза» хватит для успешного старта карьеры в любой из областей и больше ничему учиться не придется. Например, чтобы построить успешную карьеру разработчика, такому выпускнику явно понадобится «подтянуть» практические навыки по написанию кода — но не придется изучать программирование «с нуля».
Идеальный соискатель на должность «Computer Scientist» должен обладать знаниями по теоретической информатике, теории алгоритмов, проектированию баз данных, компьютерному моделированию, при необходимости выполнять задачи аналитика и проводить исследования, знать весь процесс от проектирования до внедрения ПО… Список можно продолжать долго (подробнее читайте тут и тут).
Работодатели хотят видеть профессионала, который не ограничен применением навыков в сугубо научной сфере. Кстати, русскоязычные работодатели тоже ищут таких специалистов и предлагают свои названия профессии: ведущий алгоритмист и инженер-исследователь. На этих примерах прослеживается та самая специализация, о которой мы упоминали в прошлом разделе.
Где можно работать?
Для человека, окончившего университет по рассматриваемой специальности, остается немаловажным вопрос о трудоустройстве.
И действительно: куда можно устроиться, имея на руках диплом по курсу "программная инженерия"? Что это за профессия? Где работать будет наиболее оптимально? На все эти и другие вопросы ответим прямо сейчас.
Для начала стоит выделить основные сферы деятельности, где может трудиться программный инженер. Сюда относятся:
- Коммерческие организации. В большинстве своем, это банки, бизнес-центры, другие различные предприятия.
- Некоммерческие организации. Как ни странно, но подобных организаций гораздо больше. Сюда относятся различные научные, проектные, технологические, конструкторские и многие другие предприятия.
Какую именно сферу деятельности лучше выбрать? Это решать только самому программному инженеру. Стоит внимательно рассмотреть и проанализировать все возможные варианты, и лишь потом сделать выбор.
Теперь стоит обратиться к вопросу, как проходит работа в сфере "программная инженерия".
Компьютерная инженерия — что это?
проработку устанавливаемого программного обеспечения,
заменяемость модулей,
возможность усовершенствовать устройство,
вариации по мощности, производительности и комплектующим,
и др.
чтобы пользователи могли подключать к устройств у различное периферийное оборудование от разных производителей ;
чтобы пользователи могли устанавливать различные операционные систем ы и программное обеспечение ;
чтобы была возможность добавлять к устройству оперативную память, жесткий диск, менять блок питания, видеокарту и др.
какие материалы для его строительства можно использовать ;
как реализовать вентиляцию и отопление ;
как в дальнейшем можно поменять планировку ;
мебель каких размеров можно будет использовать ;
в какие цвета можно все покрасить ;
и др.
проектирование м компьютерных устройств ;
написанием программного обеспечения и прошивок для спроектированных устройств ;
проектирование м микросхем ;
проектирование м плат ;
разработкой операционных систем для произведенных устройств ;
проектированием и исследованием в сфере робототехники ;
и др.
Что в итоге
Да, действительно программисты, SE и CS — специальности близкие, но не одинаковые, и готовят таких профессионалов на разных университетских специальностях. Наибольшую путаницу в трактовке терминов вносят работодатели – для них, например, разница между «программистом» и Software Engineer может быть совершенно не очевидна.
Судя по требованиям работодателей, от «просто программиста» ждут творческого подхода, универсальных знаний и soft skills, а «computer scientist» может решать важные, но при этом сугубо прикладные, узконаправленные задачи — говорить о том, что одна специальность «по умолчанию» лучше или «сильнее» другой тут не приходится.
Профессии в сфере информационных технологий всегда считались очень важными и престижными. Программный инженер - как раз такая работа. Все об этой специальности будет рассказано в данной статье.
Кто такой программный инженер?
Весьма востребованной на сегодняшний день считается сфера, именующаяся "программная инженерия". Что это за профессия? В чем ее особенности? Ответить на эти вопросы сможет далеко не каждый. А между тем, рассматриваемая специальность является невероятно важной и престижной.
Как можно вкратце охарактеризовать работу программного инженера? Обслуживание компьютеров - вот основная суть профессии. Однако в большинстве случаев специалисты занимаются созданием и вводом в эксплуатацию различной программной продукции. Профессиональный работник обязан грамотно планировать и контролировать все этапы своего рабочего процесса. Как правило, трудовая деятельность программного инженера заключается в согласовании с заказчиком всех основных моментов и этапов. Приступая к работе, специалист должен четко следовать установленным инструкциям.
Стоит указать, что рассматриваемая работа невероятно сложная. Она включает в себя аналитические, программистские, проектные, управляющие и многие другие аспекты. Между тем многие люди даже не имеют представления о таком явлении, как программная инженерия. "Что это за профессия, кем можно пойти работать?" - задают они вопрос, даже не подозревая, насколько эта работа престижна.
Что это за профессия и кем работать?
Дело в том, что сфера программной инженерии невероятно обширна, и функции специалиста на одном предприятии могут значительно отличаться от обязанностей другого специалиста. Именно поэтому стоит выделить некоторые основные объекты профессионально-трудовой деятельности специалиста. Сюда относятся:
- проектирование и реализация, их методы;
- автоматизированная система обработки информации;
- автоматизированное проектирование;
- производство и эксплуатация, их способы;
- работа с алгоритмическими и математическими моделями.
Заключение
что такое программная инженерия,
что такое компьютерная инженерия.
Мы будем очень благодарны
если под понравившемся материалом Вы нажмёте одну из кнопок социальных сетей и поделитесь с друзьями.
Компьютерный инжиниринг это совокупность методов и средств практического решения инженерных задач с помощью компьютерной техники и прикладных информационных технологий, среди которых особое место занимают системы автоматизированного проектирования.
Повышенный интерес к проблемам автоматизации производственной деятельности посредством САПР проявляют предприятия и организации практически всех отраслей науки и производства. Их разработке и профессиональному применению придается первостепенное значение как за рубежом, так и в России, поскольку автоматизация проектирования является неотъемлемой составной частью приоритетных направлений научно-технического прогресса электронизации и комплексной автоматизации машино- и приборостроения. От успехов в создании и развитии САПР во многом зависят и сроки разработки образцов новой техники, и внедрение интегрированных автоматизированных производств, и рост производительности труда инженерно-технических работников.
Компьютерная техника и САПР предоставляют более производительные и эффективные методы геометрического моделирования объектов, широкие возможности баз данных и баз знаний. Без современных САПР сегодня уже невозможно проектирование сверхсложных изделий, так как они на высоком качественном уровне позволяют справляться с конструкторскими, расчетными и технологическими задачами. Представление знаний в системах искусственного интеллекта, к которым относятся и САПР, является одной из центральных проблем в процессе глобальной информатизации, поскольку информационные технологии могут эффективно имитировать поведение человека в той или иной области деятельности. В известной книге «Искусственный интеллект» А.Эндрю пишет: «Искусственный интеллект это область исследований, направленных на то, чтобы заставить машины выполнять функции, которые… способны выполнять люди». В активной информационной деятельности инженера компьютер и САПР являются интеллектуальными субъектами взаимодействия с ним, его партнерами и ближайшими помощниками. Поэтому использование новых информационных технологий САПР в инженерном образовании становится, по существу, социально-экономической потребностью, а использование графических навыков без знания информационных технологий сегодня уже невозможно. Таким образом, цель информатизации системы образования состоит во всеобъемлющей рационализации интеллектуальной деятельности за счет внедрения новых информационных технологий, в радикальном повышении эффективности и качества подготовки специалистов.
Рис. 1. Детандер — опытно-конструкторская работа группы студентов СГФТА, вошедшая в число десяти лучших работ в конкурсе, проводимом компанией PTC в США
В числе главных достоинств высококлассных САПР машиностроительной ориентации возможность виртуального параметрического 3D-моделирования деталей и сборочных узлов, полная ассоциативность, обеспечивающая мгновенное получение безошибочных аксонометрических и двумерных проекционных изображений созданных электронных моделей реальных изделий и обеспечение высокого стандартного качества чертежно-конструкторской документации.
В последние два десятилетия в высшей профессиональной школе постоянно ведутся работы по использованию современных технических компьютерных средств и новых информационных технологий при подготовке будущих инженеров. Передовой опыт информатизации и компьютеризации образования показывает явно выраженную тенденцию обучение студентов практическим аспектам новых информационных технологий и их применению в будущей профессиональной деятельности. Поэтому практически во всех технических вузах сегодня уже введены прикладные дисциплины, в зависимости от функциональной направленности применяемых в учебном процессе САПР, для обучения навыкам использования этих систем в будущей учебной и профессиональной деятельности. В одном учебном заведении для профессиональной подготовки студентов может использоваться целый комплекс систем автоматизированного проектирования различного назначения, причем во многих технических вузах применяются самые мощные интеллектуальные САПР параметрические, многомодульные, объектно-ориентированные, полифункциональные комплексные системы, способные заменить несколько систем узкоспециального назначения. С появлением таких САПР в образовательном процессе субъективные аспекты компьютерной техники (в качестве объектов освоения) стали определяться взаимообусловленной совместной деятельностью: организационно-методической со стороны педагога и учебно-профессиональной со стороны студентов. Такая работа направлена на достижение конкретных целей подготовки будущих специалистов с помощью обучения компьютерному проектированию.
Сегодня для всех очевидно, что профессиональная школа при выборе программных продуктов должна ориентироваться на реализацию прикладных функций НИТ. Каждому техническому вузу следует стремиться освоить и использовать мощный системный программный пакет, обеспечивающий трехмерное параметрическое моделирование. Выбор программных продуктов для использования в образовательных процессах каждого вуза должен основываться на том, чтобы подготовка специалистов велась в русле профессиональной направленности обучения.
Студенты Снежинской государственной физико-технической академии (СГФТА) имеют возможность освоить такие общепризнанные конструкторские системы среднего уровня, как SolidWorks, AutoCAD, КОМПАС, T-Flex, а также получивший мировую известность высококлассный программный продукт компании Parametric Technology Corporation Pro/ENGINEER. При этом приоритет отдается именно системе Pro/ENGINEER, поскольку более высокое качество информационных технологий автоматизированного проектирования подразумевает и более высокий уровень подготовки будущих специалистов. Системы автоматизированного проектирования используются в графической подготовке студентов СГФТА и как объект изучения, и как современное эффективное средство конструирования электронных моделей реальных изделий, а также служат для решения ряда педагогических задач. Возможности параметрического виртуального моделирования изделий любой сложности и реалистичность визуализации этой САПР представляют собой педагогический потенциал, который при создании определенных условий способствует не только приобретению знаний, умений и навыков автоматизированного конструирования, но и формированию творческих способностей, воображения, образно-графического и технического мышления, а также повышению инженерно-графической и информационной культуры студентов. Конструкторская направленность систем автоматизированного проектирования определила их место в числе общеинженерных дисциплин в первую очередь при графической подготовке и при изучении основ автоматизированного проектирования, а затем и при работе над курсовыми и дипломными проектами по конструкторско-технологическим специальностям.
Рис. 2. Курсовая работа студента Семена Подгорнова «Проектирование поверхностей сложной аэродинамической формы», представленная на 6-й всероссийский конкурс «Компьютерный инжиниринг»
Необходимость обучения студентов работе с интеллектуальными интерактивными системами автоматизированного проектирования продиктована современными квалификационными требованиями к молодым специалистам. Наличие множества проблем в российской экономике, производстве, науке, образовании и общественных отношениях на фоне достижений развитых стран мира требует переосмысления главных целей и задач отечественной профессиональной педагогики и пересмотра основополагающих требований к подготовке будущего инженера. В соответствии с образовательными концепциями нашего времени уровень профессиональной квалификации современного выпускника технического вуза прежде всего подразумевает его способность творчески решать задачи по созданию новой техники, по разработке высоких технологий, по оптимальной организации производства в условиях глобальной информатизации. А поскольку традиционная методика вузовской графической подготовки не обеспечивает надлежащих навыков конструирования, то крайне необходимо создавать новые эффективные технологии для обучения будущих специалистов конструированию на основе использования функциональных возможностей САПР, причем с выходом на конкретные технические решения. Опыт показывает, что полученных в студенческие годы знаний и умений, как правило, недостаточно для выполнения самостоятельных конструкторских работ, что приводит к длительной адаптации молодого специалиста к конкретным производственным условиям. Из этого следует, что изучение инженерно-графических дисциплин должно проводиться в атмосфере технического творчества, высшим проявлением которого является изобретательство. К тому же внедрение в образовательный процесс конструкторско-графических САПР переводит техническое творчество студентов в виртуальную область, когда творческие возможности вообще не имеют границ. Этому способствует и проведение различных конкурсов по компьютерному моделированию и графике среди студенческой молодежи, которые значительно активизируют учебно-познавательную и учебно-профессиональную деятельность студентов по освоению функциональных возможностей САПР (работы студентов СГФТА, приведенные на рис. 1-3, были представлены на всероссийских и международных конкурсах).
Конструкторская работа является одним из самых интересных направлений в творческой деятельности человека. В советские времена многие учащиеся были вовлечены в конструкторскую деятельность, но впоследствии данное направление не получило должного развития. Кроме того, за это время значительно изменились профессиональные и ценностные ориентиры в обществе, трансформировались личностные качества подрастающего поколения, в том числе студенческой молодежи. Чтобы устранить противоречия между современными квалификационными требованиями к выпускникам технических вузов и имеющимся уровнем инженерной подготовки молодежи нового поколения, профессорско-преподавательский состав СГФТА пытается внести свой вклад в решение комплексной проблемы обучения студентов младших курсов основам конструирования и формирования у них профессиональных качеств будущего специалиста.
Рис. 3. Работа студентов СГФТА, выполненная средствами САПР Pro/ENGINEER
Мы занимаемся разработкой вопросов о мотивации изучения конструкторско-графических дисциплин на базе интеллектуальных САПР, основываясь на принципах интенсификации познавательной и учебно-профессиональной деятельности студентов, овладевающих интеллектуальными компьютерными инженерными системами автоматизированного проектирования. Это обеспечивается виртуально и реально реализуемой технической идеей, вызывающей эмоциональный подъем и высокую работоспособность студентов. Поэтому при подборе задач для упражнений по обучению работе с САПР мы считаем очень важным, чтобы такие упражнения сочетали в себе подражательную и творческую деятельность, требовали от студентов хорошего пространственного представления, сообразительности, размышлений, ориентируя студентов на поиски собственных путей решения той или иной задачи (см. рис. 2). Если в основе овладевания знаниями и умениями путем тренировочных упражнений учащихся лежит лишь воспроизводящая деятельность, то это не только не способствует, но порой даже тормозит их умственное развитие. Развивающий характер упражнения носят лишь тогда, когда содержат творческие идеи, реализация которых требует от студентов оригинальных идей и самостоятельности мышления.
С педагогической точки зрения существенное значение имеют подходы к формам организации и методам аудиторной работы студентов с преподавателем, а также самостоятельной работы студентов. Работы, связанные с обучением студентов основам конструирования, должны быть в значительной мере самостоятельными, а коллективная работа должна предусматривать личную ответственность каждого студента за порученную ему часть общего дела. Совместная деятельность не только помогает учащимся легче усваивать необходимый материал, но и является необходимым условием последующей инженерной практики, ибо формирует такие качества, как профессиональное достоинство, обязательность, организованность, коммуникабельность, способность переживать за общее дело. В процессе самостоятельной учебно-профессиональной деятельности, подкрепляемой закономерным интересом учащихся к компьютерным системам автоматизированного проектирования как ко всему новому, закладываются основы для творческого и культурного саморазвития будущих специалистов.
Сегодня студенты СГФТА могут на высоком уровне выполнять заказы производства по дву- и трехмерному моделированию средствами САПР. Это подтверждено на деле. Так, на рис. 1 изображена трехмерная виртуальная модель детандера, главного функционального компонента автономной мини-электростанции, модель и полный комплект чертежей к которой были созданы группой студентов СГФТА средствами САПР Pro/ENGINEER.
Следует привести еще один пример. Особенность и новизна работы по созданию учебных пособий по начертательной геометрии заключается в том, что выполнена она самыми младшими студентами средствами инженерной САПР в учебном процессе, ассоциируемом с учебно-познавательной и учебно-профессиональной деятельностью. Практическая значимость работы заключается в применении учебных пособий для облегчения освоения студентами трудной, но очень важной фундаментальной инженерной дисциплины, а также в ее личностно-формирующей ориентации.
Татьяна Чемоданова
Доцент Снежинской государственной физико-технической академии, канд. пед. наук.
Терминология
Изучение сути вопроса логично начать с понимания терминов. Самым понятным является «Programmer», который в Оксфордском словаре определяется как человек, ответственный за написание программы. И с переводом все просто: программист – он и в Африке программист. И даже в России. Сложности начинаются дальше.
«Software Engineer» (SE) (согласно статье в webopedia) — это дипломированный профессиональный инженер, имеющий достаточно знаний и навыков для применения инженерных дисциплин при создании программного обеспечения. Главное отличие — SE занимается разработкой, руководством проектов, а программист их реализует путем написания кода. На русский название должности переводится как «инженер-программист» или просто «программист».
Теперь разберемся с тем, кто такой «Computer Scientist» (CS). Если верить словарю, то речь идет о работе в области теории вычислений и проектирования компьютеров. Разные словари дают разный перевод на русский: «учёный, работающий в области теории вычислительных машин и систем (в области ВТ, в области компьютерных наук)» или «программист».
Итого, имеем три очень разных определения в английском и три «программиста» в русском.
Читайте также: