Сентябрь 2014, начало 4 курса программной инженерии

Я решил изучить Python с помощью написания лабораторных работ по языкам программирования. Идея показалась интригующей, потому что в конце курса мы должны были реализовать компилятор простенькой версии языка С, а в моем случае выходил компилятор на интерпретаторе — забавно, подумал я, и принялся кодить лабы по ЯП на Python 3.4.

Февраль — Март 2015

Мой преподаватель по ЯП, одновременно уже 4-ый год как тренер по олимпиадному программированию, а, значит, хорошо знающий меня человек, вдруг предлагает поработать на одну забугровую компанию X, потому что из студентов-бакалавров нашего вуза только я один (по ее памяти) пишу на Python, а X как раз ищет разработчиков на Python из нашего вуза для своего стартапа в области e-commerce. Отлично, решил я, значит будут нормально платить, и набрал команду из 5 человек включая меня. Все вместе мы стали с нетерпением ждать собеседования.

Апрель 2015

Нам сказали, что тщательно и подробно продумана вся логика проекта, уже даже дизайн есть, нужно лишь написать код, поставить, так сказать, проект на рельсы (нет, нет! мы сразу же подумали про Django). Не глубоко оценивающим и неопытным взглядом мы прикинули, что проекту делаться месяцев пять, хотя там были элементы социальной сети, e-commerce аггрегатора, и еще одна изюминка, которая превращала этот проект во вкусный пирожок — возможность конструировать магазины из товаров аггрегатора и делиться ими в социальной сети. Сложно? У меня не было опыта сказать легко это или сложно, долго это или быстро, но, по чистой случайности, в головах всех 5-ых ребят был срок 5 месяцев, что устраивало наших будущих коллег из X, так как сентябрь — начало бизнес сезона.

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

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

Май 2015

5 студентов разработчиков без опыта, у которых на носу защита бакалаврской работы, взялись читать документации, учиться новым инструментам и принципам разработки, вникать в Agile, и писать код. После нелегких двух месяцев работы (Django, Amazon EC2, PostgreSQL, Mailchimp, Apache2, Jinja2, SCSS, JS, Bootstrap, jQuery) была, наконец, представлена веб-визитка, которая умела принимать заявки на тестирование альфа версии основного продукта. Это было большим достижением для нас, и нам всего-то оставалось сделать невозможное до сентября — всю функциональность продукта.

Июнь 2015

… тем временем у нас подготовка и защита бакалаврских работ…

Июль — Август 2015

«Вы уверены, что вы продумали логику?», — спрашивали мы у коллег из Х. Тогда где будет кнопка «Забыл пароль»? А вы серьезно думаете, что много попапов — это хорошая идея? Может быть, процесс ввода платежной информации вынесем из одного попапа в визард? А вы вообще думали, что произойдет с юзером, который попытается сделать регистрацию, используя аккаунт google plus с почтой Y, а в системе уже будет юзер с неподтвержденной почтой Y? Почти каждый вопрос логики методично просеивался через нас и мы тратили кучу времени для нелегкой борьбы с юзабилити.

«Почему файлы от дизайнера в размере A4 — это же невозможно верстать „по линейке“?», — спрашивали мы у коллег из Х. Почему мы получаем все время разные оттенки одного и того же элемента UI? Евпатий, да это же интерфейс как Windows 98… А где дизайн для мобильных устройств и планшетов ведь уже осталось две недели до презентации продукта? А почему почти все файлы *.ai (Adobe Illustrator) не содержат исходных картинок? Похоже, наш прекрасный и сил не жалеющий дизайнер просто не умеет компоновать *.ai файлы.

Сентябрь 2015

«Не, ну серьезно, продумайте логику с пригласительными билетиками на наш сайт на время альфы, у вас же есть UI/UX человек?», — настоятельно рекомендовали мы нашим коллегам из X. «Этот человек не UI/UX, он просто имеет такую должность, на самом деле он другим занимается, но логику продумываю я», — отвечал нам директор компании X.

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

Октябрь 2015

В тесном кругу программистов мы обговаривали нашу з/п на основании данных о з/п сотрудников примерных должностей в других компаниях. В итоге сошлись на 70-90 к для каждого из нас.

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

После долгих, мнительных обсуждений нам было предложено 30 к в месяц до лета 2016 года, хотя наши запросы были в три раза больше и мы действительно этого заслужили. Наверное, многих смущает такой большой скачок в з/п, но и мы сделали невозможное — в совершенно неопытной команде собрали в один проект Django, Nginx, RabbitMQ, Celery, Elastic Search, PostgreSQL, Amazon Web Services, Jenkins, Selenium+Firefox, Karma+PhantomJS и еще кучу клиентских штук, и заставили это все выполнять конкретные бизнес требования.

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

Комментарии (10)


  1. Pashkevich
    03.11.2015 12:56
    +1

    В чем суть повествования?


    1. nikialeksey
      03.11.2015 13:49

      В том, что чудес не бывает)


      1. Xu4
        03.11.2015 14:05
        +2

        То есть, получается, C-компилятор на Python не удалось написать, да?

        Просто, с таким же успехом можно было взять название: «Всё началось с идеи поступить в университет», или «Всё началось с того, как моя училка познакомилась с директором компании Х», или «Всё началось с того, что Гвидо ван Россум в 89-м году решил отвлечься на небольшой хобби-проект, чтобы скоротать рождественскую неделю».


        1. nikialeksey
          03.11.2015 15:45
          +1

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


          1. Xu4
            04.11.2015 07:28
            +1

            Новое название лучше подходит. Я для вас мотивировочную картинку даже нашёл. Мне кажется, она хорошо отражает то, как нужно к зарплатным переговорам подходить. :)


            1. Suncheez
              06.11.2015 01:23

              Древнейший ресторанный принцип: «Быстро, вкусно, недорого — выбирайте любые два».


  1. gluck59
    03.11.2015 16:10

    Вангую, что это был ebaysocial — прекрасно проходит по всем пунктам.


    1. nikialeksey
      03.11.2015 19:12

      Не, ошибка… В том сайте, что создали мы, создание «коллекций» поинтересней будет ;)


  1. lasc
    04.11.2015 03:20
    +1

    Мы 5 месяцов писали продукт, не написали (но в нем есть какой-то функционал), напихали туда все модные штуки — дайте нам много денег.


  1. justhack
    04.11.2015 09:56
    +1

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

    нанимаясь, студенты рассчитывали, что бизнес проведет их к успеху, попутно обеспечив опытом

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