Семь навыков профессионального программиста. Качества программиста для резюме


Семь навыков профессионального программиста / Хабр

Каждый год мы обучаем под свои проекты и набираем в команду студентов. Хантим, конечно, не всех. «Мы на работу ходим, а нам деньги плотют» — это точно не к нам. За «звездами» тоже не охотимся. Ищем в первую очередь тех, кто хочет расти, развиваться, становиться «звездой», а мы можем им в этом помочь.

Одна из проблем нашего высшего образования в том, что в вузах учат много чему, и алгоритмам, и языкам программирования, и ООП, и даже паттернам проектирования. Но я еще ни разу не встречал, чтобы в вузах учили работать работу. Лабораторки не в счет. Спихнул – и забыл! Возможно, просто не везло.

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

Итак, про семь навыков…

1. Проводит декомпозицию задачи и проектирует ее решениеПолучив задачу, программист не должен сразу бежать писать код. Правильный программист 80% времени работает головой, и только 20% времени — руками. Даже создание не очень сложной программы требует анализа и проектирования: декомпозиции задачи на боле простые подзадачи и последующего синтеза общего решения из частных. Например, выбор длины переменной целого типа есть элемент проектирования.2. Адекватно оценивает затраты на выполнение Ответ «Для решения этой задачи мне потребуется 8 часов», — неправильный. Оценка всегда величина вероятностная. Правильный ответ, например, «от 4 (быстрее точно не смогу) до 16 часов (скорее всего, точно сделаю)». Большой разброс не должен смущать руководителя, он отражает высокий уровень неопределенности при решении программистских задач.3. Планирует свою работу и составляет графикПри составлении план-графика решения задачи, программист должен расставлять приоритеты своих работ таким образом, чтобы максимально быстро снизить имеющиеся риски, а не добиться быстрого прогресса в решении. Отложенные «мутные» подзадачи могут выявить тупик в принятом проектном решении, и все придется начинать сначала.4. Соблюдает принятые стандартыНу, тут все просто. «Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете». (с) Стив Макконнелл.5. Обеспечивает требуемое качество, минимизируя затраты и рискиЭто, наверное, самый сложный навык. Надо научиться находить золотую середину между запрограммировал, «как получится», и написал «самый совершенный код».6. Выполняет тестирование и отладку кода«Откомпилировалось – отправляем в тестирование!» — подход неверный. Программист обязан найти максимум ошибок в своем коде. Он может сделать это намного эффективнее, поскольку для него программа – «прозрачный ящик». Большинство ошибок лежит на границах областей определения и изменения переменных алгоритма. Тестировщик же будет тестировать код, как «черный ящик», бомбя по площадям перебором большого количества наборов данных.7. Анализирует найденные дефекты и отклонения от графикаНу и последнее, как любая самоуправляемая система программист должен обеспечивать обратную связь. Обязан анализировать фактические отклонения от планов по срокам и качеству и выявлять их причины для того чтобы скорректировать свой рабочий процесс и минимизировать подобные отклонения в будущем.Заключение Как-то подошли ко мне два студента с вопросом: «А почему Вася получает в три раза больше каждого из нас? Он что, пишет код в три раза быстрее?». «Нет, — ответил я, – он пишет код медленнее вас. Просто он решает такие задачи, которые вы вместе, пока, не сможете решить за любое отведенное вам время. Потому учиться, учиться и учиться!» Мастер с большой буквы отличается от просто профессионального программиста не навыками, а сложностью и масштабностью решаемых задач.

habr.com

Пример резюме ленивого программиста

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

Фамилия Имя Отчество

Год рождения: по правде

Место жительства: Советский Союз 

Телефон: тел.+ 7(777) 777-7777 

E-mail: [email protected] 

Минимальный уровень заработной платы: 1000$

Цель: получение должности программиста

Образование:

2000 - 2005 – Технический Университет, факультет Вычислительной техники и информатики, специальность: «инженер-программист»

Опыт работы:

2007 – наст.вр. – «…», 

Программист

Должностные обязанности:

написание программ для персональных компьютеров (ПК) на языках: Ассемблер, Бейсик, Паскаль, Delphi, Perl (CGI скрипты), HTML (JavaScript).

написание программ для MCS-51 (8051) и AVR микроконтроллеров (МК) фирмы Atmel и совместимых на языке Ассемблера и Си.

разработка блок-схем программ;

разработка цифровых узлов для ПК и МК; 

узлов на основе МК;

стыковка различных микросхем с ПК и МК.

2006 - 2007 – «…», 

Инженер-программист 

Должностные обязанности:

поддержка системы "Клиент-Банк"

разработка новых модулей и их внедрение, SQL

система переводов "Avers", администрирование, поддержка

система переводов "MoneyGram" , администрирование, поддержка

2005 – 2006 – «…», системный администратор

Должностные обязанности:

настройка и тех. поддержка офисной техники (компьютеры, факсы и т.д.)

оптимизация производительности работы персонала с офисной техникой

оптимизация производительности работы офисной техники

обучение персонала работе с ПО и офисной техникой

Другие навыки:

профессиональный пользователь ПК (Microsoft Windows 95–ME,Microsoft Windows NT4–XP, Linux, FreeBSD)

знание PHP, SQL, JavaScript, Visual Basic, VBScript, C, C++, Java, Python, Perl, Object Pascal, Assembler

умение проектировать информационные системы, реляционные базы данных (Borland Interbase SQL server 6.0, Firebird SQL server 1.0, MySQL server 4.0, Microsoft Access XP)

Личностные качества:

Умение качественно и в определенных пределах выделенных сроков работать. 

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

Обладание творческими способностями. 

Присутствие желания работать и зарабатывать.

← предыдущая статья   архив статей   следующая статья →

www.nkc.ru

Образец резюме - инженер программист | Образцы резюме - шаблоны - чистые бланки - анкеты

РоманГород: МоскваПол: мужской

Возраст: 39 лет

 

Требования к будущей работе:

Должность: Инженер программистЗарплата (минимум): 2 500 USD

Опыт работы:

более 5 лет«Info Directions, Inc.» Виктор, Нью-Йорк.: с июля 2006 по ноябрь 2006Должность: Инженер-программистРазработчик сетей C# NET для береговой охраны в области учёта вызовов и времени разговора абонентов и разработки программ обслуживания клиентов в телекоммуникационных службах. Разработка регрессивных и испытательных нагрузочных аппликаций в сфере сравнительного анализа производительности для береговой охраны. Интернетовские аппликации для береговой охраны и автономные аппликации. Разработка для береговой охраны интерфейса прикладного программирования на основе MS 2.0 для разветвленных компьютерных сетей и обработки баз данных. Применение MS для структурированных запросов и хранимых процедур для управления базами данных. Основная деятельность в отладке программ, анализе и совершенствовании кодов в аппликации для береговой охраны с целью обеспечения стабильности работы, включая анализ выполнения плана структурных запросов. Широкое использование Visual Studio для кодирования и отладки программ. Составление документации, отчетности и динамичная коллективная работа.

 

Министерство сельского хозяйства США (МСХ США) Вашингтон, Округ Колумбия.: с июня 2005 по август 2005Должность: Разработчик аппликаций интрасетиРазработка аппликаций интрасети в C# для обработки кадровых форм SF-52 служащих МСХ США в режиме онлайн. Основным занятием было совершенствование защиты регистрации и разработка устройств для администратора с целью лучшей обработки форм в режиме онлайн. Использовал MS SQL и занимался созданием хранимых процедур. Разработал несколько расширений для аппликаций SF-52 с целью обеспечения эффективности и безопасности. Задокументировал дополнительные технические требования и сценарии использования для проекта SF-52.

 

«PetsMart Direct» Брокпорт, Нью-Йорк.: с января 2001 по март 2001Должность: Программист / Аналитик IIВ основном работа с Java & J2EE в качестве исследователя и разработчика проекта объединения баз данных в интрасети. Занимался созданием аппликации для клиентов и сервера Java для обработки запросов электронной почты с целью автоматического генерирования отчётов документов на основе DB2/400 с применением драйвера IBM AS/400 API. Разработал несколько функциональных аппликаций в Visual Basic для Microsoft Outlook.

 

«West Group» Рочестер, Нью-Йорк. (Подрядчик): с октября 2000 по декабрь 2000Должность: Инженер-программистРазработал аналог отдельной аппликации разветвленного графического интерфейса пользователя на языке Java для вызова объектной модели документов API. Этот проект был аналогом аппликации, которую предполагалась использовать и интегрировать в будущем в стратегической разработке, включая системы Aurora-H и Morpheus. Система Aurora-H является драйвером для конвертирования правильно построенного XML в объектную модель XML. Интерфейс TBGUI применяется для определения правил извлечения и трансформации. Аппликация TBGUI показывает узлы графического дерева, и может создавать и манипулировать данными в пределах документа XML.

 

«Netsight Systems» Рочестер, Нью-Йорк.: с января 2000 по август 2000Должность: Разработчик сетевых аппликацийРазработчик сетевых аппликаций для проекта ORTISA (Интерактивной программы-агента в режиме онлайн реального времени). Занимался разработкой веб-приложений для графических потребностей в звене связи между клиентами и предприятиями. Основным проектом было создание устройства управления календарем и базой данных для планирования деловых встреч в режиме онлайн. Разработал и использовал систему баз данных Access и Oracle для проекта ORTISA. Инсталлировал и поддерживал в рабочем состоянии сервер аппликаций Allaire’s Jrun Java в Windows 2000 для информационного сервера Интернет. Первоначально разработал аппликации в JSP, JavaBeans и Java Servlets, а далее преобразовал аппликации в ASP и JavaScript с целью увеличения скорости и эффективности.

«Xerox Corporation» Рочестер, Нью-Йорк. (Подрядчик): с мая 1999 по октябрь 1999Должность: Инженер-программистГотовил к работе тестовые компьютеры для широкой программы тестирования программ (в частности XCAMS 3.0) с использованием продуктов программного обеспечения гарантированного качества и разрабатывал/совершенствовал сценарии Visual Basic, тестовые драйверы, и вычислительные процедуры для тестирования программного обеспечения. Участвовал в независимых технических экспертизах при обсуждении ключевых вопросов, касающихся этапов разработки программного обеспечения и учета требований клиентов перед выпуском продуктов

 

«R. Shanly & Associates, Inc.» Мендон, Нью-Йорк.: с апреля 1999 по апрель 1999Должность: Инженер-программистРазработал и поддерживал в рабочем состоянии веб-сайт компании и клиентов с использованием языка гипертекстовой маркировки HTML, Perl и JavaScript для коммерческого и обычного пользования в Интернете. Оказывал помощь в тестировании и отладке продуктов, разработанных в Visual Basic для приложений, и поддерживал в рабочем состоянии сетевую систему

 

«Kitchin Micro» г. Цинциннати, Огайо: с июня 1994 по январь 1999Должность: Консультант по системамРазрабатывал, проектировал и поддерживал в рабочем состоянии клиентские веб-сайты с использованием языка гипертекстовой маркировки HTML, C/C++, Perl, JavaScript и Java для электронного бизнеса. Разработал базу данных бухучета и базу данных приложений GUI-интерфейса в Visual Basic. Проводил консультации с клиентами по планированию и реализации интернетовского и сетевого оборудования.   Создавал, повышал уровень и обслуживал компьютерные системы клиентов.

 

«НАСА в Лендли» Ньюпорт Ньюз, штат Вирджиния: с июля 1987 по сентябрь 1987Должность: Программист ЭВМКак часть летней студенческой программы добровольно принял участие в групповой работе по разработке программы на языке Pascal в проекте спутника. Разработал код для подачи команд на спутниковый компьютер для управления приводами параболических антенн.

 

Профессиональные навыки:

 

•Языки программирования: C/C++‚ C#‚ Java‚ Perl‚ Visual Basic‚ Lisp‚ Prolog‚ Eiffel

•Инструментальные комплекты баз данных: Access‚ Mini SQL‚ MySQL‚ Oracle‚ Python‚ MS SQL

•Инструментальные комплекты GUI: Windows API / MFC‚ Java AWT / Swing‚ Gnome GTK‚ KDE Qt‚ X / Motif

•Графические инструментальные комплекты GUI: DirectX‚ OpenGL‚ RenderMan

•Операционные системы: Windows 95/98/NT/2000/XP/Vista‚ FreeBSD‚ Linux‚ Solaris‚ OS/2

•Веб-разработки: .NET‚ ASP‚ JSP‚ C#‚ PHP‚ Java Servlet‚ JavaScript‚ HTML‚ CGI/Perl‚ XML

•Веб-серверы: Apache‚ Orion‚ Resin‚ Tomcat

•Общиепрограммныепродукты: Office 95/97/2000/XP/2003/2007‚ PhotoPaint‚ PageMaker‚ Dreamweaver‚ Flash‚ 3D Studio Max‚ LightWave 3В

 

Образование:

Основное: высшееТехнологический институт в Рочестере, США: (высшее (специалист)), с 1999 по 2007Специальность: «Бакалавр наук в информатике»

Университет города Цинциннати, США: (высшее (специалист)), с 1995 по 1998Специальность: Информатика

Библейский колледж и семинария Цинциннати, США: (высшее (специалист)), с 1991 по 1995Специальность: «Бакалавр наук в библиологии»

 

Иностранные языки:

Английский: свободное владение

 

Дополнительная информация:

Семейное положение: холостДети: естьО себе: Программирование‚ лыжный‚ спорт‚ компьютерные игры‚ путешествие‚ фотографии‚ научная фантастика‚ изучение языков.

 

Контактная информация:

Телефон: **************

e-mail: ****************

Образцы резюме - шаблоны - чистые бланки - анкеты - примеры написания

7resume.ru