От стажера до эксперта

04.07.19

Саморазвитие

Что надо знать, чтобы тебя считали хорошим разработчиком? Какие навыки должны быть у специалиста, чтобы он был востребован у отечественных заказчиков? Как понять, что ты действительно развиваешься и растешь? На эти и другие вопросы на конференции INFOSTART EVENT 2018 ответил профессиональный разработчик 1С Виталий Онянов, выпускник Омского Государственного Университета им. Достоевского. Виталий работает ведущим разработчиком 1С в ООО «ФТО», занимается внедрением и оптимизацией информационных систем. Делает свои проекты, пишет статьи и обзорные материалы, иногда учит других людей.

Кому лень читать статью, предлагаю посмотреть видеозапись доклада:

Ну а любителям текста добро пожаловать под кат:

 

Вступление

Несмотря на то, что мой доклад находится в секции «Мотивация, лидерство и личная эффективность», я прежде всего разработчик 1С, как минимум половину своего рабочего дня я программирую. Делаю это я в компании «ФТО». И мы занимаемся внедрением и поддержкой информационных систем.

Когда я пришел в компанию почти 6 лет назад, в команде «1С-ников» было около 10-15 разработчиков и, примерно 20 консультантов. Сейчас у нас только разработчиков 1С более 70 человек. То есть за это время через нас прошло большое количество программистов, и большинство из них пришли с какими-то совсем небольшими, и, я бы сказал так, хаотическими знаниями в 1С (какие были у меня, например). Либо вообще студентами без какого-то либо существенного опыта.

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

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

 

Дерево развития разработчика 1С

Итак, поехали….

Начнем мы с некоторого дерева развития разработчика 1С.

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

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

 

 

 

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

В рамках вводного курса мы учим его писать запросы. Используем для этого замечательный сайт – SQL-EX.RU, где есть много методических материалов и разнообразных заданий разного уровня сложности. Мы предлагаем пройти 80 запросов из учебного курса. После того, как разработчик их проходит, он уже в совершенстве умеет писать разные запросы, умеет использовать вложенные таблицы и временные таблицы, правильно использует операторы HAVING и GROUP BY и так далее. SQL-EX.RU - очень хороший сайт, я его всем рекомендую.

Параллельно мы знакомим человека с 1С. Раньше мы давали, наверное, всем хорошо знакомую книжку Радченко и Хрусталёва «Практическое пособие разработчика». Но в последнее время молодежь все меньше любит читать книги и все лучше усваивает визуальные картинки. Поэтому теперь мы даем бесплатный курс Евгения Гилёва «Программирование 1С за 21 день». Курс пусть и не новый, но он на 8.3, на управляемых формах, в интерфейсе «Такси» и, как понятно из названия, состоит из 21 урока. И прохождение курса как раз и означает просмотр всех видеоматериалов и выполнение всех практических домашних заданий, которые разработчик сдает и обсуждает с опытным наставником.

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

 

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

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

А в рамках обучения мы даем следующий учебный курс – «Профессиональная Разработка интерфейсов и форм». Данный курс очень хороший, он достаточно объемный, знакомит с самыми основами разработки в 1С, дает представление о базовых понятиях и состоит из двух частей: работа с обычными и управляемыми формами. Управляемые формы мы даем, понятно, всем без исключения, а вот обычные формы уже в зависимости от того, в какую группу или проект определен разработчик. Понятно, что если разработчик попадает на какой-нибудь большой проект по внедрению ERP, то предлагать изучать обычные формы нет никакого смысла. И у нас уже есть некое поколение разработчиков, которые никогда не видели обычных форм. Счастливые люди.

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

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

 

 

 

Вот проходит примерно полгода, и наш младший разработчик немного подрос, он уже:

  • Знает все наши методы разработки
  • По результатам курса овладел техникой программного изменения форм
  • Более-менее ориентируется в типовых конфигурациях
  • Делает несложные задачи
  • Его код обязательно рецензируется
  • Ну а требование только одно – качаться дальше

 

 

Начальное обучение пройдено, а мы продолжаем развивать различные навыки разработчика, и как правило, основное умение, которым должен обладать разработчик – это знание системы компоновки данных.

Когда-то мы в вакансиях писали: «хорошее знание СКД». Но потом подумали и данный пункт вообще исключили из описания вакансии, так как умение работать с системой компоновкой данных, это для разработчика 1С требование «по умолчанию» и само собою разумеющееся.

Для обучения СКД у нас есть свой внутренний курс. Ну а вы можете, например, найти на том же «сайты-по-1с.рф» отличный курс «Разработка отчетов в 1С на СКД».

Нагрузка распределяется уже таким образом, что разработчик 80% своего времени работает над боевыми задачами, а 20% занимается обучением. И при таком графике на прохождение курса и изучение СКД может уйти 2-4 месяца.

Все это время и для боевых, и для учебных задач данного разработчика осуществляется обязательное рецензирование и разбор кода.

 

 

 

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

  • Различные отчеты
  • Работать с динамическими списками
  • Таблицами и деревьями на формах
  • Разрабатывать печатные формы со сложными макетами
  • ну и работать с другими объектами, где используется СКД.

Весь код все также рецензируется.
 

 

 

Мы продолжаем развивать навыки разработчика 1С. Что это может быть?

Ну, например, права доступа и RLS. Здесь есть курс от учебного центра «1С» – «Управление доступом», но он немного не про то. В хорошем курсе «Доработка и адаптация типовых конфигураций», весь 4-ый модуль посвящен работе с правами доступа.

Далее, Конвертация данных. Обменов везде много, есть практически у каждого клиента, на каждом проекте. И большинство обменов строится как раз с написанием правил в конвертации данных. Хороший разработчик, мне кажется, должен уметь пользоваться этим инструментом. Есть 2 отличных курса по конвертации данных, для 2-ой и 3-ей редакции.

Все больше сейчас встречается прочих обменов данными, построенными на web и http-сервисах. Тут я не знаю какого-то единого тренинга. И, если меня вдруг слышат создатели курсов, то мне кажется, что такой курс был бы очень полезен. Но есть довольно много статей, видеозаписей. У нас на канале есть несколько вебинаров, посвященных данным технологиям.

Нагрузка здесь примерно такая же: 20% обучение, 80% работа с боевыми задачами.

 

 

И, если все хорошо, то спустя полтора-два года мы получаем полноценного среднего разработчика.

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

Рецензировать можно уже только большие или какие-то сложные неоднозначные задачи.
 

 

 

Какие еще навыки разработчика необходимо развивать:

Конечно же, это умение правильно использовать библиотеку стандартных подсистем, разрабатывать в типовых конфигурациях. Выполнять обновление релиза. В этом может помочь упомянутый уже мной курс «Доработка и адаптация типовых конфигураций». Ну а что касается обновлений релизов. То тут, наверное, можно посмотреть вебинар с обновлением, в качестве вводного тренинга. Но в целом нужна практика. Первое обновление мы производим, как правило, вместе. Я все наглядно рассказываю и показываю. Начинаем с небольших, не сильно измененных конфигураций, ну а дальше-больше. Обновление релизов типовых конфигураций, хорошо дает прочувствовать, зачем нужны наши правила разработки.  До этого мы говорили, надо делать так, конечно, объясняли почему, но вот именно когда разработчик начинает сам делать обновление, происходит некоторое озарение. Ага… так вот оно что…

Кроме того, разрабатывать мы более-менее научили. Но, начиная с какого-то уровня, разработчик должен разбираться и в администрировании системы 1С:Предприятие и SQL-сервера. Он должен быстро найти и устранить причину неработоспособности 1С (особенно, это актуально в поддержке). Уметь устанавливать необходимые службы, разбираться с правами доступа в Windows, устанавливать различные компоненты, уметь там… почистить серверный кэш, например. Разбираться с лицензированием 1С, организовать веб-доступ к базам данных. Уверенно себя чувствовать в SQL Server Management Studio, настраивать планы обслуживания, писать небольшие скрипты и т. д. Для обучения этому у нас есть просто отличнейший внутренний курс по администрированию 1С и SQL. Ну… по крайней мере мне кажется, что он такой замечательный, потому что я его веду…

Ну и, сами знаете где, можно найти также подробный курс на эту тему.

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

Четких сроков здесь уже нет. Все зависит от выбранной программы и текущей ситуации.

 

 

 

На выходе получаем сильного разработчика 1С, который:

  • Делает любые задачи, и, как правило, укладывается в срок
  • Может решать различные задачи по администрированию, железу
  • Может выступать заместителем ведущего разработчика в группе или на проекте
  • Рецензирование, как правило, не требуется

 

 

Хотя про рецензирование надо сказать отдельно. Я рецензирую абсолютно все задачи, как минимум при первичной передаче задачи в тест. Я знаю, что это довольно дорогая процедура, я сам трачу на нее много своего времени, но это позволяет мне:

  • Держать всю картинку в голове, о том, кто, где и что делает на проекте. Благодаря этому я могу более эффективно распределять задачи между разработчиками, избегать дублирования функционала, дублирования кода, написанного разными программистами и т. д.
  • Я контролирую общее качество кода на проекте.
  • Но главное, это то, что когда разработчик знает, что его код будет просмотрен в обязательном порядке, он априори начинает выдавать более качественный результат. Часто у разработчика есть выбор: сделать быстро и не самыми оптимальным образом, либо правильно, но нужно немного заморочиться. Простой пример – заполнение реквизита по ссылке в табличной части. Предположим, в ТЧ добавлен реквизит «Вид номенклатуры», и его надо заполнить из колонки «Номенклатура». Можно пойти простым путем – просто в цикле по строкам заполнить по ссылке, но это, конечно, не оптимальное решение. А правильно выгрузить все позиции номенклатуры в массив, единым запросом собрать все соответствия «Номенклатура» – «Вид номенклатуры» и уже потом заполнить реквизит табличной части. И если рецензирования нет, то некоторые могут выбрать первый вариант. Таких примеров можно привести множество. А когда у разработчика нет возможности, скажем так, схалтурить, когда он знает, что такой код сразу будет возвращен на доработку, то вынужден сразу делать хорошо, это приводит к выработке привычки писать хороший код. Ну а хорошие привычки, как правило, остаются на всю жизнь.
  • Рассказывая другим, как надо правильно писать код, я не могу позволить себе совершать такие ошибки. Мой уровень тоже при этом растет. Вообще, если взять двух одинаковых по уровню разработчиков, и заставить их рецензировать код друг друга, то я лично убежден, что качество кода от каждого из них резко повысится. Они будут с увлечением выискивать ошибки друг друга, и, как следствие, следить и за своим кодом.
  • Поэтому, как я уже говорил, рецензирование – чуть ли не самый важный элемент обучения разработчиков. Если вы хотите, чтобы ваши разработчики росли, но вы не рецензируете их код, я рекомендую попробовать. Более того, если вы – разработчик и никто не рецензирует Ваш код, попросите другого разработчика прорецензировать, чтобы развивать в себе полезные привычки и навыки, если, конечно, есть такая возможность.

Идем дальше. Какие еще навыки разработчика необходимы, какие стоит прокачивать?

Мы рассмотрели технические навыки разработчика, именно навыки программирования. Но, начиная с какого-то этапа, разработчик должен хорошо понимать и предметную область. Что это может быть? Ну, например, тот же ЗУП.

В любой поддержке есть ЗУП. В последний год у нас много проектов по ЗУПу (сами знаете почему…). В общем, от ЗУПа, как правило, никуда не деться.

 

 

Далее, практически в каждой организации ведутся блоки продаж, складского учета, планирования. И хорошо бы опытному разработчику ориентироваться в соответствующих подсистемах. Тут есть два отличных курса от проекта « »:

  • Первый – «Практические задачи по внедрению УТ 11.3, КА 2.2 и ERP 2.2», он такой, не сказать, что бы уж сильно углубленный, но дает основные представления о работе подсистем «Продажи», «Закупки», «Склад», «Планирование» в конфигурации ERP и производных от нее. Как раз то, что надо.
  • Сразу после него можно браться за курс «Доработка и адаптация типовых конфигураций», там как раз рассказывается о том, как правильно выполнять модификации по этим же подсистемам.
  • Ну а в качестве закрепления материала, можно сдать сертификат «1С:Специалист по внедрению торговых решений». В обоих этих курсах есть блоки по подготовке к сертификации.

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

Опять-таки, обращаюсь к разработчикам курсов, посмотрите, может быть, какие-то темы вас также заинтересуют.
 

 

 

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

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

Это – основа любой компании.
 

 

Но встает вопрос, куда развиваться дальше? Какие тут есть варианты?

Прежде всего, можно развиваться дальше в конкретной предметной области. Я здесь написал «Компетенции в ERP». ЕРП – здесь в широком смысле слова. В зависимости от потребностей и задач, это может быть:

  • Управленческий учет
  • Глубокое знание производства
  • И связанных с ним проблем расчета себестоимости.
  • НДС, налоги и т. д.

 

 

Такие специалисты очень востребованы как на конечных предприятиях, так и в компаниях-интеграторах. Из них получаются очень сильные консультанты-внедренцы. Туда тоже есть смысл расти. Но развитие в эту сторону подразумевает близкое общение с пользователями, командировки и т. д. Не всем разработчикам это подходит.

По этой и другим причинам, разработчики больше склонны уходить в другую область. Ну, для тех, конечно, кто вообще хочет дальше развиваться. Т. к. многие, к сожалению, где-то здесь и останавливаются. Ну а что, ты хороший специалист, тебя ценят, зарплата нормальная. Зачем еще что-то делать? Может быть это и нормально, но я не разделяю таких мыслей.

Итак, еще одна область, куда, как правило стремятся разработчики – это область технологических вопросов крупных внедрений. Удивительно, но несмотря на то, что специализация достаточно узкая, здесь есть множество соответствующих курсов: и у учебного центра 1С, и у команды «гилев.ру», и у нас даже свой курс есть. Ну, наверное, это связано с тем, что быть Экспертом это престижно, круто, прибыльно. И это действительно так. Курсы-курсами, но как лично мне кажется, одними теоретическими навыками в этом вопросе не обойтись. Здесь необходимо участие в конкретных реальных проектах по оптимизации. И тут все несколько сложнее, т. к. не во всех организациях, не во всех компаниях есть такие задачи. И это, для многих, может являться существенным сдерживающим фактором. Ну что тут сказать? Если вам эта область близка и интересна, но задач по оптимизации у вас нет, то, наверное, имеет смысл задуматься о смене работы. Не знаю, если честно, что еще тут можно предложить. Ну и как подтверждение статуса, надо конечно получить сам сертификат 1С:Эксперт. Ведь и подготовка к сертификации сама по себе является бесценным опытом. 

 

 

Ну вот он… 1С:Эксперт по технологическим вопросам

 

 

 

 

Но и на этом не все.

Еще одна область, в которую можно расти, это область управления. Управление командой, вообще людьми, проектами.

Область очень сложная, абсолютно не похожая на то, чем обычно занимается разработчик 1С.

Представьте ситуацию, что есть хороший руководитель, который вообще не технарь, профильного образования никакого не имеет. И мы по каким-то причинам делаем его разработчиком 1С. Причем делаем это так – вот тебе конфигуратор, иди, программируй. Что он там напрограммирует? Что-то, как-то, методом «тыка». Тут надо обучать с нуля, и я надеюсь, что рассказал вам, как. Но в общем, какая-то абсурдная ситуация, не правда ли?

Но вот в обратную сторону, она встречается повсеместно, не только в разработке, но и во всех других областях и абсурда, почему-то не вызывает. Был у вас хороший специалист, и вы внезапно делаете его руководителем. Как он будет руководить? Ну, скорее всего, также, как тот менеджер будет программировать. Я думаю, что многие из вас встречали подобных руководителей. Причем люди-то могут быть хорошими, и ни в чем невиноватыми, их просто не научили.

Поэтому, тут, также как и в разработке, необходим комплексный подход. И, мне кажется, в этом деле лучше отдаться в руки профессионалам.
Есть несколько различных бизнес-школ. Отнестись к выбору программы необходимо с особенной тщательностью. Есть, скажем так, не очень хорошие программы с громкими названиями. Но хорошие школы тоже есть, обучение в них идет, как правило, около года. И я лично рекомендую школу менеджеров «Стратоплан». Чуть ранее на этой сцене выступал Александр Орлов, один из основателей и учредителей этой школы. Я у них проходил годовую программу обучения, ни разу не пожалел.

Также, в данной сфере написано огромное количество книг: хороших, плохих, средних. Читайте обзоры по книгам, читайте сами книги. Мне кажется, это вот та область, когда ты никогда не будешь чувствовать себя уверенным опытным специалистом. А если вдруг почувствовал, то что-то здесь не так. Ну… это мое личное мнение.

Ну и есть еще одна область, в которую, как мне кажется, надо вкладываться всегда, независимо от вашего уровня, и это «Личная эффективность».

  • И прежде всего это управление своим временем. Тут тоже есть множество книг, методик, тренингов. У Максима Дорофеева есть отличный курс «Джедайская техника пустого инбокса». Всем рекомендую.
  • Здесь же книги, тренинги по личной мотивации.
  • Это участие в различных конференциях, хакатонах. Причем не только в роли слушателей, но и попробуйте выступить.
  • В этом вопросе, как раз очень пригодятся навыки публичных выступлений.
  • Вообще, то, что называется английским словом – Networking. К сожалению не смог найти русского аналога.
  • Обязательно попробуйте поучаствовать в каких-то смежных, open source проектах. Это невероятно расширяет кругозор.
  • Это может быть также изучение языков, хотя именно для 1С это не очень актуально.
  • Ну и чтение самой разнообразной литературы. В прошлом году, на этой конференции, например, Андрей Макаров делал отличный обзор книг, которые стоит прочитать.
  • Может быть что-то еще, вам самим, конечно, виднее.

Не стоит забывать и про эту, как мы говорим, «зеленую» ветку.
 

 

Вот такое вот дерево развития навыков разработчика 1С у нас получилось.

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

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

 

 

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

И я в свое время предложил своим сотрудникам провести такой небольшой эксперимент. Я сделал несколько неких карточек опыта:


 

 

Для каждого, в зависимости от его опыта и задач. Ну и себе тоже, конечно. И предложил каждый вечер делать некую ретроспективу своего рабочего дня. Вспомнить те задачи, которые приходилось решать, и если в результате этого человек узнал что-то новое, то ставить отметку в соответствующий прямоугольник. Не «я сделал очередной отчет на СКД, вот плюсик». Это и так видно из учетной системы, например. А, я сделал отчет, и при разработке задействовал новый метод, который ранее не использовал, сделал какую-то особенную схему, нагуглил и применил какое-то новое решение. Вот в этом случае делать отметку. Здесь абсолютно субъективная оценка.

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

В своем докладе, я хотел также рассказать еще много о чем. Рассказать о том, как мотивировать, поддерживать, контролировать сотрудников. Какие приемы, средства и методы мы для этого используем и другое.

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

 

А самое главное, что я пытался донести своим докладом сегодня, это то, что какими бы навыками и опытом обладали вы и ваши сотрудники, помните, что никогда не надо останавливаться.

На какой бы лесенке или этапе своей карьеры вы не находились, всегда знайте, что есть куда расти.

Дальше… дальше… и дальше…
 

 

Кстати, такой вот человек у нас тоже есть. Это наш руководитель, который нами… повелевает. И кто знаком с этой историей, те знают, что его самым коварным образом предал и убил его лучший ученик. Но это уже наш, внутренний юмор…

А у меня все. Всем спасибо за внимание. Надеюсь, что «до встречи». Мои контакты на экране, пишите, если захотите задать вопрос или поделиться своим опытом.

 

Данная статья написана по итогам доклада, прочитанного на конференции INFOSTART EVENT 2018 EDUCATION.

 

30 мая - 1 июня 2024 года состоится конференция Анализ & Управление в ИТ-проектах, на которой прозвучит 130+ докладов.

Темы конференции:

  • Программная инженерия.
  • Инструментарий аналитика.
  • Решения 1С: архитектура, учет и кейсы автоматизации на 1С.
  • Управление проектом.
  • Управление продуктом.
  • Soft skills, управление командой проекта.

Конференция для аналитиков и руководителей проектов, а также других специалистов из мира 1С, которые занимаются системным и бизнес-анализом, работают с требованиями, управляют проектами и продуктами!

Подробнее о конференции.

 


См. также

Радио "Аналитик", 15 выпуск 2 сезона. "Путь аналитика" с Ильёй Никитиным. Переход от технической поддержки к анализу

Личная эффективность Обучение и наставничество Бесплатно (free)

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

18.03.2024    285    0    Radio_Analyst    0    

5

Радио "Аналитик", 14 выпуск 2 сезона. "Путь аналитика" с Натальей Лосевой. Переход от разработки к анализу

Личная эффективность Обучение и наставничество Бесплатно (free)

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

04.03.2024    349    0    Radio_Analyst    0    

5

Измерение и развитие потенциала сотрудников

Обучение и наставничество Бесплатно (free)

Тема измерения и развития потенциала сотрудников является ведущей последние два года в компании Proaction. Елена Дуюн, руководитель направления «Развитие корпоративной культуры», поделится с нами откровением, которое возникло в процессе исследовательского проекта на платформе Proaction. Елена расскажет о текущей кадровой ситуации, о видах потенциала сотрудников, о том, как оценивать этот потенциал и как мотивировать персонал на саморазвитие.

01.03.2024    369    0    DuyunElena    0    

3

Радио "Аналитик", 13 выпуск 2 сезона. "Путь аналитика" с Анастасией Лощиловой. От финансового директора на заводе до функционального архитектора

Обучение и наставничество Бесплатно (free)

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

20.02.2024    508    0    Radio_Analyst    0    

1

Презентация продукта как искусство

Презентации и публичные выступления Бесплатно (free)

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

12.02.2024    935    0    comol    4    

17

Личный бренд в IT: а оно вообще надо?

Личная эффективность Бесплатно (free)

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

01.02.2024    837    0    mitinskiy    2    

7

Зачем программисту книжки читать

Личная эффективность Бесплатно (free)

Нам с детства постоянно твердят, что книга – лучший друг, книга – лучший подарок, книга – вообще лучшая вещь в мире. Да, это действительно так. Книги явно и значительно влияют на нашу работу, карьеру и жизнь. О том, как правильно читать книгу, как книга вообще влияет на человека, и главное: зачем вообще читать эти книги программисту, сисадмину, аналитику, расскажем в статье.

31.01.2024    2838    0    a_a_burlakov    25    

46

Гореть, но не выгорать: как сохранить ресурс специалистов

Коммуникации Мотивация Личная эффективность Бесплатно (free)

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

15.01.2024    1700    0    KChebykina    0    

31
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. morin 57 01.06.19 05:02 Сейчас в теме
Главное чтоб стажировка не превращалось в ситуацию, когда младший специалист бесплатно занимается ошибками, недоделками, исправлением откровенного замыливания немладших "специалистов".
abasovit; AllexSoft; user705522_constantin_h; tyasytova; +4 Ответить
15. Tavalik 3350 03.06.19 12:50 Сейчас в теме
(1)
У нас в компании есть и отдельная стажировка для студентов - это специально разработанный учебный проект, который команда выполняет в процессе обучения под руководством опытного преподавателя. По объему часов стажировка равна семестру обучения в ВУЗе. По объему знаний значительно превосходит.

По результатам стажировки лучших учеников берем в штат. Ну а там уже все так, как в докладе. Давать переделывать вчерашним студентам за "немладшими" разработчиками никакого смысла нет. В реальности все наоборот.
38. Masaj 04.06.19 19:10 Сейчас в теме
(15) fto.com.ru Ваш сайт? После такого оптимистичного доклада, решил зайти.Очень впечатляет Система градаций, все структурировано, иллюстрированно. И... пшик!
Надежды не оправдались. в разделе вакансии что выложено?

У меня как у члена вашей аудитории встал извечный вопрос. Как и Зачем? на вопрос "как?" можно ответить красиво. а на "зачем?". я, после взгляда чуть глубже (на сайт) ответа не вижу. У вас не предлагается точки входа начинающим разработчикам.
Всем хочется НабратьЗаЗабором готовых специалистов. Хотя про стажировку говориться, "целый месяц" , "Полное погружение"

В общем какое то непонятное послевкусие. Нет, доклад хорош, понятен, проработан, видны усилия. а дальше что? Или доклад ради доклада? Или не готовы к последствиям?

На Истину не претендую Ибо ИМХО
39. Tavalik 3350 04.06.19 20:08 Сейчас в теме
(38)

А что конкретно вас смутило на сайте?

Также я вас не совсем понял, что вы имеете в виду, говоря, что мы не готовы к последствиям?
43. Serg O. 224 06.06.19 05:54 Сейчас в теме
(1)тут сооовсем другая ситуация у ФТО - стажер целый месяц учится на себя... Интересно ему ещё и ЗП платят? И вдруг стажёр через 1-6 мес. Научившись уйдёт к конкурентам?
Эта схема хороша конечно...но для массы стажёров...и при наличии Мастеров....
А когда от приходящего сразу в бой... Требуют...
И мастера- это те же стажёры... Только чуто подольше работающие, такое не подходит... А хотелось бы
AllexSoft; acanta; +2 Ответить
45. acanta 06.06.19 09:15 Сейчас в теме
(43). Видите ли, для того чтобы стажеры при минимальном ознакомлении могли сразу приступить к работе, надо в вузе или даже средней школе основы закладывать.
1с вышла на рынок в виде сети франчайзи когда базы этой не было совсем, "доступно и всерьез" же было, поэтому собственное обучение покрывало все потребности.
Сейчас при смене поколений компьютеров и добавлении большого числа смежных технологий предполагается, что стажёр приходит с готовыми знаниями всего, кроме 1с.
А это не так, часто начинают именно с 1с и далее осваивают все остальное.
54. morin 57 11.06.19 16:37 Сейчас в теме
(43)
И вдруг стажёр через 1-6 мес. Научившись уйдёт к конкурентам?

Кто не хочет кормить свою армию, сам будет голодный и битый.
2. starik-2005 3033 01.06.19 08:48 Сейчас в теме
А университетские задачи - это что? СЛАУ или 3Д-проекции на плоскость? Хотелось бы раскрытия темы университетских задач (ибо я не в курсе, на сколько за последние 20 лет деградиповало высшее образование, но пару диссертаций кандидатских я видел и помогал писать к ним код, и если в москоаском ВУЗе 90х это был блок на ассемблере для графического построения ИИ-шной модельки на С++, то в 00-х в региональном ВУЗе это был графический объект на объектном паскале для системы АСУ). На сколько кандидатские диссертации лучше типовых произведений аля курсовик? На сколько сложны там задачи? Особенно сейчас...
16. Tavalik 3350 03.06.19 12:53 Сейчас в теме
(2)
Ох, больная тема...

Даем на собеседовании около 10 задач с повышением сложности. Начинаем совсем с простых: удалить отрицательные элементы из массива, вычислить факториал при помощи рекурсии, рассчитать n-ый член ряда Фибоначчи, транспонировать матрицу и т. д.

И с этим то справляются не все :(
23. Поручик 4670 03.06.19 14:38 Сейчас в теме
(16) Я и справляться не стану. Просто пошлю вас с такими задачами.
Raskad; ELInfinito; MVK80; nik2500; Dmitry163; RailMen; JohnConnor; CodeNull; Lok`Tar; maksa2005; asupsam; AllexSoft; &rew; trntv; TerveRus; _DaFNa_; user597231_DNorov; IvanovAV; +18 Ответить
27. starik-2005 3033 03.06.19 18:20 Сейчас в теме
(23)
Я и справляться не стану. Просто пошлю вас с такими задачами.
Так задачи-то простые (по крайней мере озвученные). Какие у Вас лично к подобным задачам претензии? Решается за минуту...
44. Serg O. 224 06.06.19 06:03 Сейчас в теме
(27) забыли ещё упомянуть классическую задачу
Сортировку списка методом пузырька..
А на вопрос что это да как это
Спрашивать Как, вы не знаете Великого Пузырька?
:))) шутка юмора
AllexSoft; TerveRus; +2 Ответить
29. Tavalik 3350 03.06.19 18:39 Сейчас в теме
(23)
Это задачи для студентов без опыта работы. На себя не примеряйте. К опытным разработчикам совсем другой подход.
61. DoReMu 3 31.07.19 16:38 Сейчас в теме
(23) Послали бы будучи студентом?
62. Поручик 4670 31.07.19 20:34 Сейчас в теме
(61) В зависимости от полноты кошелька и прочих обстоятельств. Но потом, натренировавшись на кошках, на место покозырней.
26. starik-2005 3033 03.06.19 18:19 Сейчас в теме
(16)
И с этим то справляются не все
Все, кто справляется, уехали в нерезиновск. Хотя... Если у Вас там ЗП от статыщ, то кто-то мог бы и остаться.
3. ellavs 1022 01.06.19 09:25 Сейчас в теме
Почему-то в последнее время у меня главная забота - это написать хорошее ТЗ (обычно пишу его либо для себя, либо для других программистов, т.к. оказалось, что большинство вообще не умеет формулировать задачи). А написать код по хорошо составленному ТЗ - это уже любой программист справится, тут мега мозг не нужен (если в ТЗ уже за тебя и так расписали практически весь алгоритм и логику). Но от этого устаешь, последние пару лет мечтаю просто писать код по ТЗ, а приходится транслировать "хотелки" пользователей в язык, понятный нашим программистам, а также слишком сложные для них задачи программировать самой, т.к. написание ТЗ в этом случае по времени будет дольше, чем сделать самому. Но не буду отрицать, что мне скорее всего просто не попадались в команде специалисты, работу которых не нужно было бы постоянно проверять.
Sergynia; +1 Ответить
5. morin 57 01.06.19 12:41 Сейчас в теме
(3)
Почему-то в последнее время у меня главная забота - это написать хорошее ТЗ

Это всегда так, когда вы начинаете работать с более-менее сложными задачами. Квалификация специалиста, способного правильно поставить задачу, кратно превышает все описанные здесь категории.
17. Tavalik 3350 03.06.19 12:57 Сейчас в теме
(3)
Здравствуйте.

У нас ТЗ пишут исключительно консультанты.

Первые года 2-3 разработчик программирует строго по ТЗ, набивая руку и изучая саму систему 1С.
Потом уже растет и сложность задач, разработчик подключается к разработке решений, построению архитектуры, предлагает варианты и т. д. Но даже в этом случае финальное ТЗ остается все равно за консультантами 1С.
20. ellavs 1022 03.06.19 13:09 Сейчас в теме
(17) наверно, в нормальных организациях так и должно быть. И это правильно, программист должен делать свое дело, не отвлекаясь. Просто там, где работаю я (да и вообще зачастую по региону), таких людей просто нет (не идут на госзарплату), поэтому приходится быть "многостаночниками" (на вопрос - почему не свалите - пока справляюсь, много интересных проектов).
24. morin 57 03.06.19 14:58 Сейчас в теме
(17) Исключительно консультант не сможет составить правильно ТЗ по определению, если конечно речь не идет о какой-то элементарщине.
Сложность составления ТЗ намного превышает сложность разработки (реализации проекта) ПО, т.к. необходимы и глубокие знания предметной области, и знания ПО. Но как правило это очень не благодарный труд, со всеми вытекающими последствиями: ТЗ составляются без учета архитектуры и уже имеющихся возможностей решения - с одной стороны, задачи выполняются без понимая предметной области - с другой стороны.
nixen88; Designer1C; ZLENKO; +3 Ответить
30. Tavalik 3350 03.06.19 18:43 Сейчас в теме
(24)
Выше я писал, что разработка сложных решений осуществляется совместно с опытным разработчиком.
4. dsdred 3251 01.06.19 12:03 Сейчас в теме
Увидел знакомые мне курсы ))
6. Summer_13 02.06.19 11:22 Сейчас в теме
" Предположим, в ТЧ добавлен реквизит «Вид номенклатуры» и его надо заполнить из колонки «Номенклатура». Можно пойти простым путем – просто в цикле по строкам заполнить по ссылке, но это, конечно, не оптимальное решение. А правильно выгрузить все позиции номенклатуры в массив, единым запросом собрать все соответствия «Номенклатура» – «Вид номенклатуры» и уже потом заполнить реквизит табличной части."
Тут действительно такая большая разница в скорости,что необходимо каждый раз увеличивать в десятки раз количество кода? Вместо трех строк кода придется поддерживать 50,если так на каждый нюанс предварительно без нужды изгаляться код простенькой обработки превратится в модуль на тысячу строк.
Я понимаю,если у вас в документах по тысяче строк,где действительно нужна оптимизация,но даже если строк 100-200,я думаю там разница существенной не будет,по крайней мере я такого примера кода в типовых конфигурациях не наблюдал.
Выложите сюда код,хочу для себя посмотреть какой он,потому что до конца для себя не уяснил,как загружается массив соответствий.В Цикле или через загрузить колонку.
cdrw3; asupsam; kometa1308; IvanovAV; +4 Ответить
7. acanta 02.06.19 11:34 Сейчас в теме
(6) для sql на древнем компьютере даже 5 строк было заметно. Я допускаю, что на более мощном сервере с оптимальными настройками и оптической сетью даже 500 строк будет в веб клиенте летать. Но у нас сервер может быть в Китае,на виртуальной машине тоже могут экономить, а подключение к интернету через два-три роутера и клиент на вайфай.
Если код можно оптимизировать, то объединение типовых конфигураций к сожалению не получается.
Я не знаю как сейчас обстоят дела, но на 8.2 файловая 8ка не работала от слова совсем даже с качественной гигабитной сетью, которая без проблем позволяла работать трем расчетчикам на зик 77 плюс бухгалтерия.
Сейчас на публикаторе в тонком клиенте вполне приемлемо. Но как я понимаю, это костыль.
8. Summer_13 02.06.19 12:06 Сейчас в теме
(7) Вот если все условия ,которые выше описали, есть, тогда и надо оптимизировать.
Сейчас общемировая тенденция-минимизировать количество кода,как только возможно,а не увеличивать его в десятки раз на пустом месте,поскольку мощностей серверов уже вполне достаточно,чтобы такие процедуры для не очень большого количества записей проходили незаметно.
А если дальше заказчик попросит ещё одну колонку обработать? То есть вместо одной строчки кода,ещё увеличите код на строк 10-20.
Тут уж правильнее,если так хочется через запрос,получать результат запроса,где будут все колонки ТЧ с обработанными значениями и грузить разом через метод Загрузить().Так хотя бы останется только прибавление пары строк в самом тексте запроса и всё.
Да и недавно была какая-то статья ,не смог найти пока,где как раз автор сравнивал запросы и методы через точку,и не всегда это было в пользу запроса.
Логично,что это бред когда видишь такой код Элемент.Родитель.ВидЭлемента.Принадлежность.СуперХарактеристика.Код ,но и одной точки бояться до фанатизма не стоит,это бред если на каждую точку через запрос оптимизировать,даже если получение значений идёт в цикле.
9. acanta 02.06.19 12:13 Сейчас в теме
(8) Этот код позволяет делать сам конфигуратор. Почему бы не добавить в конфигураторе настройку допустимое количество точек? Или вообще сделать включение этого суфлера через ключ в реестре, как отладку на сервере.
Поскольку это уже стало проблемой.
Мы говорим что 8ра это трехзвеная архитектура и любой код с директивой наСервере это код интерпретатора, выполняющийся в одном или нескольких процессах на усмотрение платформы.
Выполнение параллельного проведения документов в двух разных базах ускоряло процесс в 4 раза.
Интересно же за счёт чего.
Минимизация кода выполняется разработчиками типовых за счёт создания БСП, в общих модулях.
Но поскольку это ставит разработчика в зависимость от версии Бсп и архитектуры конфигурации, то все пишут сами по синтакс-помощнику.
Может сделать в конфигураторе выбор подсистем как полный путь к файлу в файловой системе Виндоус, а общие модули отдельным окном рядом с синтакс- помощником?
Но тогда комментарий придется как то включать в текст описания.
А база tempDB что правда что ли одна на всех пользователей всех баз?
Почему бы не в каждой базе свою?
IvanovAV; +1 Ответить
18. Tavalik 3350 03.06.19 13:01 Сейчас в теме
(8)
Сейчас общемировая тенденция-минимизировать количество кода,как только возможно,а не увеличивать его в десятки раз на пустом месте,поскольку мощностей серверов уже вполне достаточно,чтобы такие процедуры для не очень большого количества записей проходили незаметно.


Разработчики типовых конфигураций с вами не согласны.
37. amd1986 04.06.19 17:53 Сейчас в теме
(18) В этом то и проблемы типовых конфигураций. Слишком громоздкие. А это ведет к повышенным трудозатратам как разработки, так и доработки
cdrw3; Асов; IvanovAV; +3 Ответить
28. starik-2005 3033 03.06.19 18:28 Сейчас в теме
(6)
Тут действительно такая большая разница в скорости,что необходимо каждый раз увеличивать в десятки раз количество кода?
В действительности разница может быть весьма существенной, т.к. если Вы пишите: "Для каждого СтрокаТЧ ИЗ Объект.ТабЧасть СтрокаТЧ.ВидНоменклатуры = СрокаТЧ.Номенклатура.ВидНоменклатуры КонецЦикла;", то Вы прочитаете столько объектов из справочника номенклатуры, сколько у Вас строк в ТЧ. А если напишите так: "Запрос = Новый Запрос("ВЫБРАТЬ * Поместить ВТТЧ ИЗ &ТЧ; Выбрать *, Номенклатура.ВидНоменклатуры КАК ВидНоменклатуры ИЗ ВТТЧ"); Запрос.УстановитьПараметр("ТЧ", Объект.ТабЧасть); Объект.ТабЧасть.Загрузить(Запрос.Выполнить().Выгрузить());" - то вот эта штука одну таблицу номенклатуры прочитает из СУБД, не трогая объекты. Уже на 20-ти строках разница будет заметна невооруженным глазом.

Т.е. нет там такого большого отличия в коде в части количества строк.
33. Summer_13 04.06.19 08:28 Сейчас в теме
(28)Вот здесь в комментарии (7) также я всё и расписал.
"А если дальше заказчик попросит ещё одну колонку обработать? То есть вместо одной строчки кода,ещё увеличите код на строк 10-20.
Тут уж правильнее,если так хочется через запрос,получать результат запроса,где будут все колонки ТЧ с обработанными значениями и грузить разом через метод Загрузить().Так хотя бы останется только прибавление пары строк в самом тексте запроса и всё.
А у автора вообще про массив соответствий я так понимаю речь,что меня и смутило,тут что метод загрузить колонку используется?
Да и повторюсь, в коде типовых разработчиков конфигураций не припомню,чтобы так изгалялись ради одной колонки,хотя по логике должны.
34. starik-2005 3033 04.06.19 08:30 Сейчас в теме
(33) так в запрос ее добавите - и все. Какие 20 строчек?

Не знаю, как там автор пишет, но я как раз выгрузить-загрузить предлагаю и все внутри запроса делать без дергания объектов.

А по поводу соответствий - не знаю, что там авторы пишут , не читаю беллетристику давно - то они действительно иногда сильно помогают. Но добавить что-то в новую колонку через соответствие - это какая-то дичь. Но есть ситуации, когда соответствие позволяет проиндексировать некий список/массив/таблицу и повысить производительность на порядок.
36. Summer_13 04.06.19 17:16 Сейчас в теме
(34)Я имел ввиду 20 строк ,если делать методом автора,где он получал массив соответствий,то там,если для каждой колонки тоже самое проворачивать, то 20 строк новых и выйдет.Ваш вариант однозначно плюс,я хотел сказать,что тоже самое в своём комментарии и описал уже ранее,про метод выгрузить/загрузить в (7)
А вот метод автора мне до сих пор непонятен,я просто как рецензент ни разу пока не ругал подопечных за такие вещи как получение данных в цикле через одну точку и не встречал пока ситуаций,чтобы именно на этом моменте система так сильно тормозила.
41. FreeArcher 158 05.06.19 08:27 Сейчас в теме
(28) Тут нужно всегда держать в голове, что оптимизированный код, как правило не равен короткому и лаконичному.
Т.е. если бы мы заморачивались только на скорость, то наверное не на 1С, а на Си писать надо было. Но придумали кучу языков со времен Си, которые медленнее, но лаконичнее. Имеют более короткий синтаксис, простоту и более высокую абстракцию.

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

Т.е. всякое решение к своему месту.
TerveRus; +1 Ответить
10. acanta 02.06.19 13:10 Сейчас в теме
А если пакетное проведение в базе вообще не должно практиковаться, ни пользователями, ни программистом, все расчеты и движения отдельно обработками и фоновыми заданиями, и вся обработка обьектов в базе должна выполняться только каждого отдельно и вручную, то что в таком случае должно быть в модуле документа или модуле менеджера.
В этом случае при изменении конфигурации обязательно требуется перестройка всех бизнес процессов.
Имхо, именно суфлер с точками привел к тому, что конструкция со многими точками в цикле заменяется в целях оптимизации регистрами сведений и справочниками с ключами аналитики, тогда никаких многоточий нет и разработчику придется писать запрос вместо создания объектов и поиска по реквизитам с отборами, уже потому что запрос это меньше букв.
Механизм индексов таков, что он лучше работает на трёх длинных и узких таблицах чем на одной широкой длинной и двух широких и маленьких.
Но только индексов (для пользователей в интерфейсе) поскольку объединение всех этих таблиц (а с группами ещё и сами на себя с отборами) начинает страдать, и добавление ещё одной колонки в список справочника или журнала, чем 8ка была особенно хороша, тоже отваливается.
11. Oldsad 03.06.19 03:56 Сейчас в теме
ИМХО
как уже заметили выше, чем меньше строк кода напишет программист, тем лучше
чем выше уровень абстракции тем лучше
это априори для любого высокоуровнего языка программирования

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

если б это были опции для быстродействия - то цены бы им не было, но не так как это реализовано

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

интересно было почитать о развитии программиста 1С в начале, но где на строках о том что программист 1С должен уметь настраивать SQL сервер стало понятно что статья обо всем сразу, или точнее чистая теория ниочем
давно известен принцип на западе "специалист во всем = специалист ни в чем",
и только в России почему то считается что хороший программист 1С должен уметь заправлять картриджи, настроить киско и развернуть SQL сервер с нуля
sacred; Асов; user792647; Krio2; +4 Ответить
19. Tavalik 3350 03.06.19 13:05 Сейчас в теме
(11)
вать SQL сервер стало понятно что статья обо всем сразу, или точнее чистая теория ниочем
давно известен принцип на западе "специалист во всем = специалист ни в чем",
и только в России почему то считается что хороший программист 1С должен умет


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

И да, это не для всех. Я говорил в докладе, что данное дерево - лишь возможные области роста. У нас много очень грамотных разработчиков, которые не лезут в администрирование и наоборот.
25. s_vidyakin 63 03.06.19 16:53 Сейчас в теме
Модули сразу надо было делать составными - на отдельной закладке клиентский код, на отдельной - серверный (+доп закладка для неконтекстных процедур)
Общие модули тоже надо давно сделать раздельными, типа дерева, для каждого набора галок свойств - свой субмодуль, чтобы не плодить эти *ПовтИсп, *Клиент, *Сервер, *КлиентСервер. Обращаться в коде можно будет по одному имени модуля, а разруливать проверки контекста мог бы сервер приложений, ну пусть чуть сложнее алгоритм будет. На низком уровне к вызову функции из субмодуля будет просто добавлен флаг режима из его свойств, как и сейчас при вызове из модуля с определенным набором флажков
12. nbeliaev 828 03.06.19 05:00 Сейчас в теме
Спасибо автору за материал.
Хорошая у Вас организация - почти полгода можно получать деньги за свое же обучение ) Когда я устроился в свой первый франч - мне сразу дали задачу по переносу ТиС в УТ 11 - делал долго, сделал некачествено, но выбора не было ) В последующие 3 года получил 2 спеца полностью за свой счет и сразу же поменял работу.
В целом согласен с автором во многих вопросах, но есть и разногласия, а именно:
1. Администрирование - поднять сервер 1С, развернуть базу, поднять веб сервер - этого достаточно. Деталями должен заниматься отдельный человек. По крайней мере в продакшене.
2. Знание предметной области - считаю, что одной предметной области вполне достаточно. Вот например я - знаю торговлю, интеграцию, моб., но не знаю бух. учет, производство и прочее. Соответственно и задачи я не делаю в тех областях, которые не знаю.
maksa2005; IvanovAV; user792647; Aggressorak; CyberCerber; +5 Ответить
21. Tavalik 3350 03.06.19 13:09 Сейчас в теме
(12)
1. Администрирование - поднять сервер 1С, развернуть базу, поднять веб сервер - этого достаточно. Деталями должен заниматься отдельный человек. По крайней мере в продакшене.


Как правило, этим у нас занимаются исключительно ведущие разработчики (или специалисты клиента).

(12)
2. Знание предметной области - считаю, что одной предметной области вполне достаточно. Вот например я - знаю торговлю, интеграцию, моб., но не знаю бух. учет, производство и прочее. Соответственно и задачи я не делаю в тех областях, которые не знаю.


Конечно, универсальных солдатов нет. Как я написал выше и указывал в докладе, данное дерево развития - лишь возможные области роста. У нас много очень грамотных разработчиков, которые не лезут в администрирование и хорошие спецы по вопросам производительности и железа, которые не особо знают предметную область.
13. Sla 03.06.19 08:32 Сейчас в теме
Отличная статья!
ремарка: "И у нас уже есть некое поколение разработчиков, которые никогда не видели управляемых форм. Счастливые люди." Наверное имелось ввиду ОБЫЧНЫХ форм?..
14. Tavalik 3350 03.06.19 09:45 Сейчас в теме
(13)
Да, конечно же обычных. Спасибо, в статье исправил.
22. Поручик 4670 03.06.19 14:35 Сейчас в теме
молодежь все меньше любит читать книги и все лучше усваивает визуальные картинки
Всё правильно, деградация.
Опять же, сегодня "общался" с таким вот "программистом" из КЦСОНа, Инструкцию пользователя (в картинках) смотрел, всё понятно, что ничего не понятно.

На выходе получаем сильного разработчика 1С, который:

- Рано или поздно свалит на место покозырней.
AllexSoft; IvanovAV; wowik; +3 Ответить
31. Tavalik 3350 03.06.19 18:45 Сейчас в теме
(22)
- Рано или поздно свалит на место покозырней.

На самом деле у нас по разработчикам очень низкая текучка. Разве что в Москву-Питер есть небольшой отток.
57. AllexSoft 19.07.19 11:41 Сейчас в теме
(31) расскажите как добились низкой текучки? Хорошему разработчику нужно либо много платить, либо он свалит. Если много платить - то у вас будет дорогой тариф на разработку, проигрываем конкурентам по ценнику.. для большинства ценник важнее чем качество кода.
32. D_e_X_T_e_R 572 04.06.19 05:48 Сейчас в теме
Мне понравилась статья. Спасибо за путь джедая)))
Но к концу прочтения статьи, если берем вселенную звездных войн, я понял, что как программист я вот...
Прикрепленные файлы:
rabota.v8.1c; LeXXeR; nixen88; mavom; maksa2005; asupsam; vladimir-89; user792647; AlenaR; Aggressorak; Summer_13; irina_selezneva; acanta; FuNNyHoRRoR; Tavalik; +15 Ответить
35. starik-2005 3033 04.06.19 08:36 Сейчас в теме
(32) генералом будешь однако ты...
rabota.v8.1c; acanta; +2 Ответить
40. FreeArcher 158 05.06.19 08:16 Сейчас в теме
А нет таблички с опытом в хорошем качестве? Можно было бы повесить на стену, мотивировала бы заполнять пробелы.
AlexeyK1; acanta; +2 Ответить
49. Tavalik 3350 07.06.19 07:20 Сейчас в теме
(40)
Пожалуйста.
Карта опыта №1: https://yadi.sk/i/W_lmXOBngPDxWg
Карта опыта №2: https://yadi.sk/i/jP6Kk9hXqEnymg
Карта опыта №3: https://yadi.sk/i/kxDPwttRShdLgg

Если очень надо, напишите в личку, поделюсь исходниками.
FuNNyHoRRoR; acanta; +2 Ответить
42. user1095163 05.06.19 16:31 Сейчас в теме
Спасибо, классная статья! Я сам - молодой разработчик и ваша статья подсказала мне пути развития.
vladimir-89; Tavalik; +2 Ответить
46. user817982 06.06.19 20:06 Сейчас в теме
По данной логике если программист в итоге превращается в консультанта, то зачем вообще нужна тогда стадия изучения программирования? Консультанты же справляются без этого, а несчастному программисту надо еще и эту область изучить.
47. acanta 06.06.19 20:11 Сейчас в теме
(46) кто то же должен закрывать этот пробел. Вы же не считаете что все курсы и экзамены по 1с это подготовка к собеседованию на должность архитектор/разработчик типовых конфигураций?
Консультанты конечно справляются,это без вопросов.
А клиенты еще нет.
48. Tavalik 3350 07.06.19 07:17 Сейчас в теме
(46)
Опыт программирования очень сильно помогает заниматься и аналитической работой.
Как я и говорил в докладе, из прошлых разработчиков получаются очень сильные консультанты (хотя, стоит признать, такие переходы крайне редки).
Sergynia; +1 Ответить
50. Andrefan 07.06.19 09:58 Сейчас в теме
(0)Ещё посмотрев выступление в том году, сразу посчитал Ваш доклад лучшим на той конференции.Спасибо что делитесь своим опытом, уже почерпнули в нашей команде многое из него. Вопрос такой: Вы как-то страхуете риски, чтобы юный подован, придя к вам в команду, и получив за пол-года отчасти бесплатное обучение, не свалил через эти пол-года в другое место?
51. Tavalik 3350 08.06.19 06:17 Сейчас в теме
(50)
Большое спасибо! Такие отзывы очень мотивируют.
Вы как-то страхуете риски, чтобы юный подован, придя к вам в команду, и получив за пол-года отчасти бесплатное обучение, не свалил через эти пол-года в другое место

Пока, слава богу, такого ни разу не было. Как мы этого добиваемся? Тут целый комплекс мероприятий. Постараюсь рассказать о них на конференции в этом году.
52. starik-2005 3033 09.06.19 11:56 Сейчас в теме
(50)
юный подован, придя к вам в команду, и получив за пол-года отчасти бесплатное обучение, не свалил
Как говорил один мудрый дядька что лучше пусть он научится и свалит, чем не научится и останется. Предположу, что у автора дневников со вторым есть некоторые проблемы и ненаучившихся приходится выгонять (в лучшем случае ИТСы разносить отправлять) )))
FuNNyHoRRoR; morin; acanta; +3 Ответить
55. acanta 11.06.19 19:43 Сейчас в теме
(52) Все гораздо хуже. Те, кого выгнали, а не просто отправили разносить ИТС могут познать истину и вернуться, а также начать руководить, тестировать и обучать новичков как будто они что-то забыли.
Те, кто поразносил ИТС и ушел сам, уже не вернутся. Они видели все.
53. starik-2005 3033 09.06.19 15:24 Сейчас в теме
Кстати, сегодня обнаружил прикольный тест. У кого сколько?)))
Прикрепленные файлы:
Артано; Packer; Andrefan; +3 Ответить
60. maksa2005 530 20.07.19 18:52 Сейчас в теме
(53)8/12

Манки-кодер

Да, вы писали код. Но вам ещё далеко до профи.
56. ids79 8291 27.06.19 09:44 Сейчас в теме
В статье описана типовая и самая напрашивающаяся схема обучения специалистов.

При ряде допущений она работает, но есть существенные минусы:
1. Нет гарантии, что человек не уволится после обучения. А раз часть времени отводится на обучение, тяжело поддерживать конкурентный уровень ЗП.
2. Нужно очень четко организовывать работу, чтобы всем "было" куда расти. А то, опять же, будет большой соблазн "расти" в другой компании.
3. Качество кода и стандарты, это безусловно большой плюс. Но чрезмерная погоня за этим, может также нести негативные последствия. Нужен баланс.

Я считаю, в компаниях - интеграторах лучше придерживаться разделения обязанностей (в разумном пределе конечно).
Плюсов, на мой взгляд, гораздо больше будет, вот например:
1. Обучать сотрудника нужно не всему, что возможно, а только конкретным вещам (я не говорю о базовом обучении).
2. Знать эту конкретную область он будет лучше, чем самый большой ГУРУ в компании, который знает все (так как к сожалению все забывается со временем, если с этим не работать).
3. С какого-то момента сама работа в выбранной области будет уже и обучением (тратить дополнительное рабочее время на обучение будет не нужно).
4. Не будет такого, что один человек полностью занимается отдельным проектом (а потом, не заметно становится сотрудником компании, в которой выполняется внедрение).
5. Для самой компании, с точки зрения бизнеса, такой человек более полезен, чем любой ГУРУ (хотя и ГУРУ тоже нужны). Так как он в своей области может решать задачи максимально быстро и хорошо.
6. Такому человеку будет сложно устроится "в штат" (наиболее частый переход из компаний интеграторов). Для "штатных сотрудников" в первую очередь ценится наличие большого количество компетенций. Причем, не так уж и важно, будут ли они реально применятся в компании. Человек, который "ОЧЕНЬ" хорошо знает какую-то отдельную область, вряд ли будет им интересен.

В общем плюсов, на мой взгляд, очень много. Есть конечно тоже свои нюансы, но как альтернативный вариант типовой схемы очень даже не плохой вариант.
58. FuNNyHoRRoR 19.07.19 13:05 Сейчас в теме
ИМХО, перечисленное Вами хорошо для компании, но не для сотрудника.

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

Удерживать человека нужно хорошими условиями труда, а не ограниченностью его развития.
59. acanta 19.07.19 13:46 Сейчас в теме
Насколько я понимаю, проблема в том, чтобы формировать команды из 2-3 человек, из которых каждый высококлассный узкоспециализированный специалист именно с целью взаимообучения невозможно, поскольку каждый стремится наиболее эффективно делать то, что умеет - т.е. зарабатывать.
Если нет изначально у человека стимула освоить какую-то область, то присутствие каких угодно гуру бесполезно. А вот как такой стимул возникает и почему он должен быть привлекательнее чем к примеру, полугодовое содержание для семьи из 3-5 человек это интересно.
64. user1284652 23.09.19 22:40 Сейчас в теме
(56)Курсы без самообучения не принесут нужного результата. Тренера и менторы дают максимум тех, знаний , которые Вам необходимы. Но Вы всегда должны стараться, выполнять практические задания и уделять время на самообучение.
В случае с самообучением без курсов, ситуация такая: есть много моментов, с которыми сложно разобраться самостоятельно и в свободной доступе очень много информации, большая часть которой просто не актуальна.
В свое время в ru.megaindex.com был серьезный пробел по специалистам со знанием социальной инженерии. Вышли из тупика путем привлечения молодых программистов до этого нигде не работающих. Без комплексов
Источников множество, без определенных знаний и опыта выбрать подходящие практически невозможно. В такие моменты очень важно иметь ментора, который поможет во всем разобраться и не терять мотивацию время.
63. acanta 31.07.19 22:27 Сейчас в теме
11/12. Двоичное исчисление - пробел в образовании.
65. user1284652 05.05.20 12:35 Сейчас в теме
Это точно. И без практики

Курсы без самообучения не принесут нужного результата
Оставьте свое сообщение