Владимир Бычко об управлении проектами

пиэм разъясняет, предостерегает, рекомендует

Категория: Инструменты

NDA (соглашение о неразглашении) между компанией и работником.

Очень часто участники проектного процесса получают доступ к важной для компании информации. В ряде случаев такая информация может быть секретной. Если это про вас и вашу компанию, то заключая трудовой договор, нужно подписать с работником NDA, что означает «non-disclosure agreement». Если переводить дословно, то получается «соглашение о неразглашении». В этой статье мы разберём, как составить NDA.
 
 

Какие бывают виды тайны?

У айтишных компаний бывают два вида тайн:

1. Коммерческая.
2. Профессиональная.

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

Что такое коммерческая тайна?

Информация, составляющая коммерческую тайну, включает в себя:

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

 
 

Что такое профессиональная тайна?

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

Как составить NDA?

Некого единого образца NDA не существует, каждая компания разрабатывает свою форму. Структура соглашения может быть следующей:

  1. вводная часть (в ней указывается наименование, дата и место составления документа, называются стороны соглашения и цель его создания);
  2. пункт «Предмет соглашения» (содержит перечисление сведений, подпадающих под режим конфиденциальности);
  3. пункт «Обязательства сторон»;
  4. пункт «Прочие условия» (включает порядок действий сторон на случай наступления необычных ситуаций, например посягательств третьих лиц на получение доступа к охраняемой информации);
  5. пункт «Ответственность» (определяет меру ответственности сторон за нарушение режима конфиденциальности);
  6. в конце указываются адреса, реквизиты и подписи сторон.

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

Как оформить NDA с работником?

В NDA с работником обязательно включают следующие пункты:

Сведения о сторонах соглашения (их наименования, должности и Ф. И. О. сотрудника и представителя работодателя).

Перечень инфы, составляющей тайну. Сюда могут относиться:

  • контактные данные и иные сведения о клиентах компании;
  • стоимость разработок в часах и рублях;
  • информация о дебиторской и кредиторской задолженности компании;
  • методы сбора информации о конкурентах на рынке;
  • организация бизнес-процессов;
  • иные сведения на усмотрение руководителя.

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

В приказ должны входить следующие сведения:

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

 
 
 

Семь советов о составлении NDA.

NDA можно оформит отдельным документом, а можно включить в трудовой договор (так поступают, если объём NDA незначительный). Так или иначе при утверждении ограничивающих условий нужно руководствоваться следующими правилами:

  1. В тексте не должно быть мест с двояким толкованием или размытых формулировок, кроме того, текст должен быть написан в соответствии с принятыми юридическими практиками, поэтому обязательно согласуйте NDA с юристом.
  2. Все пункты NDA должны быть законными.
  3. Не увлекайтесь, ограничивая доступ к сведениям, которые не имеют никакого отношения к возможным убыткам, а только будут мешать в работе.
  4. Четко определитесь с предметом соглашения, установите сферу сведений, подлежащих охране.
  5. Установите причинно-следственную связь между ограничениями и областью защиты компании.
  6. Создайте структуру своего соглашения, чтобы легко было выделить отдельные пункты, внесите условие, согласно которому договор будет считаться нарушенным при несоблюдении хотя бы одного положения.
  7. Удостоверьтесь в том, что работникам понятна суть соглашения. По-хорошему, с работниками нужно провести разъяснительную беседу, в которой рассказать, что они подписывают и зачем.

 
 
 

Типовые ошибки при заключении NDA.

Ошибка 1. Предмет коммерческой тайны не раскрыт подробно.

Зачастую в NDA не прописывают, что конкретно является коммерческой тайной.

Издаётся локальный акт, в котором приводятся положения п. 2 ст. 3 Федерального закона от 29.07.2004 № 98-ФЗ «О коммерческой тайне» (далее — закон № 98-ФЗ): «Научно-техническая, технологическая, производственная, финансово-экономическая или иная информация (в том числе составляющая секреты производства (ноу-хау)), которая имеет действительную или потенциальную коммерческую ценность в силу неизвестности её третьим лицам, к которой нет свободного доступа на законном основании и в отношении которой обладателем такой информации введен режим коммерческой тайны».

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

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

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

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

Ошибка 3. В документах не установлен режим охраны коммерческой тайны

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

Последствия нарушения NDA.

Есть несколько видов ответственности за нарушение NDA. Худший вариант развития событий предусмотрен нормами УК РФ,

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

Если же NDA был нарушен намеренно, а работник имел корыстные мотивы, то ответственность будет зависеть от наступивших последствий. Если был раскрыт секрет производства, руководствоваться нужно статьей 1472 Гражданского кодекса РФ, согласно которой виновная сторона возмещает все возникшие убытки.

Если коммерчески значимая информация целенаправленно собирается для дальнейшего разглашения, такие действия подпадают под ст. 183 Уголовного кодекса РФ, по которой работник может быть приговорен к 7 годам тюрьмы.

В менее опасных случаях нарушитель может быть наказан по статье 13.14 Кодекса об административных правонарушениях РФ, предусматривающей штраф в размере от 500 до 1 000 руб. для физических лиц, а для должностных — от 4 000 до 5 000 руб.

В ряде случаев охраняемые сведения распространяются с целью получения конкурентного преимущества. В такой ситуации нарушение подпадает под статью 14.33 Кодекса об административных правонарушениях РФ (недобросовестная конкуренция) или статью 178 Уголовного кодекса РФ (ограничение конкуренции).

Обуздание экселя

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

Чуть ли не единственный способ бороться с этим — переименовать csv в txt и импортировать как текст. В этом случае будет возможность пометить столбец с числами как текст. Его потом можно будет очень легко преобразовать в численный столбец и ничего в даты не превратится.

Дёшево и сердито делаем таск менеджер для заказчика

В заказных или продуктово-заказных компаниях есть процесс внешней приёмки. То есть, мы задизайнили, заверстали, закодили, протестили и выложили на внешний тестовый стенд, а заказчик проверяет.

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

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

Мы сделали на коленке решение в виде доступной обеим сторонам гуглотаблицы следующего вида:
Таск трекер для заказчика

Забрать себе эту таблицу вы можете по ссылке.

Вопросы вызывает колонка «Статус». Как сделать выпадающий список значений?
Выбираем столбец, жмём «Данные → Проверка данных»

В поле «Диапазон ячеек» меняем D1 на D3, чтобы проверка не затрагивала шапку таблицы. В поле Правила выбираем из списка значение «Значение из списка» (лол) и вписываем все состояния тасков через запятую без пробелов. Мне кажется, что этот список должен быть таким: «Открыта,В работе,Готова,Закрыта,Возвращена,Заморожена».

Я сделал гифку:
Фиксированный список значений для ячейки

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

Blisk — браузер с эмуляцией мобильных устройств

Blisk — браузер с эмуляцией мобильных устройств

Хочу поделиться новым рабочим инструментом. Это браузер для разработчиков под названием Blisk. Браузер сделан на движке Chromium и на нём пашут все нужные расширения хрома (вы можете видеть на скриншоте LastPass и Screencastify).

Главная фича браузера — эмуляция целого зоопарка устройств, от четвёртого айфона до HIDPI монитора с разрешением 1920 на 1080. В опциях можно включить синхронную прокрутку в стандартном окне браузера и окне девайса.

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

Кроме того, браузер имеет встроенный инструмент для записи скриншотов и скринкастов с выкладыванием в собственное облако. К сожалению, за использование облака придётся заплатить 10 $ за пользователя (оптом скидки).

Планирование загрузки команды

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

Начнём с того, что всех пользователей можно разбить на команды. iOS, Android, QA, дизайнеры и так далее, а потом фильтровать по этим командам доску. В верхней части доски можно для наглядности ставить вехи ключевых событий, которые должны в этот день произойти. В основном поле, в строках участников, рисуются «колбаски» загрузки. Есть возможность выбрать из списка проект, написать название работы, количество часов в день и сроки. Каждому участнику можно написать количество рабочих часов. Если в данный день загрузка неполная, в верхней части строки отображается количество недогруженных часов.

Сервис можно интегрировать со Slack, Button, Trello, Basekamp и GitHub. Кроме того, он умеет слать письма исполнителям о том, что на них назначена активность. Формировать загрузку команды при помощи этого сервиса намного удобнее, чем в гуглотаблицах.

Mictosoft Office Mac 2015: Бесплатное превью

Microsoft Office Mac 2015

Одна из причин, по которым я всё ещё держу на маке Parallels – использование виндовой версии Microsoft Office. Мак версия офиса до последних дней выглядела и работала жутковато, полноценный порт был только для OneNote.

Представленное обновление является превью-версией, которую можно слить и попробовать бесплатно.
soft
 
 
Новый офис, помимо полноценной поддержки ретины, содержит следующие фичи:

 Совместное редактирование, работающее на собственной технологии Cobalt syncing.
 Красивые вложенные комментарии.
 Встроенная поддержка облачного хранилища OneDrive и Yandex Disk. Появление такой же возможности и для партнёрского Dropbox не исключено уже ближе к релизу.
 
 
С официального сайта отдача идёт очень медленно, поэтому можно воспользоваться магнет-ссылкой. Весит 2,6 гига, для установки требует чуть больше пяти гигов.

Если же вам любо качать именно с официального сайта Microsoft, это можно сделать отсюда.

Шпаргалка по Sublime Text 2

sublime text 2 mac

sublime text win

Базовый чеклист для ревью кода

Ревью кода

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

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

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

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

Документация
Есть ли комментарии? Раскрывают ли они смысл кода?
Все ли функции прокомментированы?
Есть ли какое-то необычное поведение или описание пограничных случаев?
Использование и функционирование сторонних библиотек документировано?
Все ли структуры данных и единицы измерения описаны?
Есть ли незавершенный код? Если есть, должен ли он быть удален или помечен маркером типа «TODO»?

Тестирование
Является ли код тестируемым? Например, он не должен содержать слишком много зависимостей или скрывать их, тестовые фреймворки должны иметь возможность использовать методы кода, и т. д.
Есть ли тесты и если есть, то достаточны ли они? Например, они покрывают код в нужной мере.
Юнит-тесты на самом деле проверяют, что код предоставляет требуемую функциональность?
Все ли массивы проверяются на «выход за границы»?
Может ли любой тестирующий код заменен с использованием существующего API?

Источник

+2 Гб в Google Drive за две минуты

Нужно всего лишь проверить основные параметры безопасности вашего гуглоаккаунта. Занимает ровно две минуты. На выходе получаете такую картинку:

Основные параметры безопасности гуглоаккаунта
 
 
Есть нюанс. Это действие нужно произвести до 17 февраля. Судя по записи в гуглоблоге, 28 февраля ёмкость гуглодисков всех участников будет увеличена на два гига (об этом уведомят письмом).

Пользователи Google Apps for Work и Google Apps for Education в акции не участвуют.

Эвернот для программиста — Quiver

Многие разработчики сталкиваются с ситуацией — нужно написать функцию, очень похожую на ту, что когда-то уже приходилось писать. Или вообще, повторно использовать ранее написанную функцию. Часто после этого начинаются танцы с саблями — где именно сохранился её код? Иногда — в файлах проекта (он не всегда доступен), иногда — в каком-нибудь файлике.

В принципе, неплохое решение — отдельный блокнот в Evernote. При правильной организации блокнотов и меток полностю решает проблему.

Однако для MacOS есть более изящное решение под названием Quiver. Этакий «Эвернот для программиста». Выглядит так:
01
 
 
Организация заметок — блокноты и неограниченное количество тегов, есть полноценный поиск.

В заметке можно создавать области четырёх видов — просто текст, markdown, программный код и LaTeX. Выглядит так.

Текстовый фрагмент (при желании, можно добавить картинку):
01
 
 
Фрагмент кода (в моём случае это SQL, но поддерживается целое море языков):
01
 
 
Markdown в режиме конструктора (синтаксис стандартный):
01
 
 
Markdown в режиме просмотра:
01
 
 
LaTeX в режиме конструктора:
01
 
 
LaTeX в режиме просмотра:
01
 
 
Отображение областей каждого типа можно настроить при помощи CSS (есть встроенный редактор), в комплекте есть пачка тем для подсветки синтаксиса (я использую GitHub):
01
 
 
Приложение умеет показывать код в режиме презентации:
01
 
 
Библиотеку приложения можно положить в папку Dropbox для синхронизации, используются стандартный JSON формат.
 
 
Недостатки инструмента:

Если положить библиотеку в папку Dropbox, для создания нового блокнота придётся отключать синхронизацию, иначе просто не успеете задать ему имя. Надеюсь, этот баг разработчики в скором времени поправят.

Неудаляемый блокнот с туториалом. Хотя, может быть его и можно как-то удалить, чтобы не маячил.
 
 
Это удовольствие можно купить в апсторе за 9,99 $, либо воспользоваться триалом, скачав с сайта разработчика.

Также, если хотите, можете забрать пакет Quiver 2.0 напрямую.