Archive for the ‘Старт бизнеса’ Category

И снова ищу Ruby on Rails разработчика

Четверг, Июль 5th, 2012
Если вы сами разработчик или кого-то знаете, то пишите мне на victor.ronin at gmail.com
Обещается вкусный hour rate для хорошего разработчика.
SpydrSafe Mobile Security Inc. is developing a solution to make mobile devices more secure and to enable the use of employee-owned devices in the workplace.
We are looking for a senior Ruby on Rails 3.x developer who will help us to develop functionality for our SaaS security management web application.
You must have the following skills to qualify for this job:
— Minimum of two years of experience with Ruby on Rails
— Minimum of 5 years of overall software development experience
— Recent experience with Ruby on Rails version 3.x
— Experience with and passion for Test Driven Development (TDD)
— A strong understanding of the REST architectural style and principals
— A strong understanding of the MVC design pattern (as applied in Rails)
— Ability to communicate effectively in English
— Clean code and thoroughness is an absolute must to be successful on this project
The following skills are not required but are considered a plus:
— General understanding of computer security
— General understanding of enterprise oriented SaaS
— General experience with Posergres databases
— General experience with JQuery
Please respond with a cover letter that includes the following:
— Your Ruby on Rails development experience, including examples of past work
— Your familiarity with SaaS based enterprise products
Skills Required:
ruby-on-rails, saas, security, software-development, test-driven-development, rspec, cucumber, rest, mvc, design

Налоговое законодательство США.

Среда, Апрель 6th, 2011

Недавно брат в своем блоге дал ссылку на чью-то статью, как много в налоговом законодательстве России всяких устаревших ошметков, которые только ставят палки в колеса бизнесу. И дальше в одном из ответвлений обсуждения этой ссылки пошло сравнение с налоговым законодательством США.

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

а) Оно (налоговое законодательство) сложное.

Причем не просто сложное, а офигительно сложное, постепенно меняющиеся, оспариваемое или подтвержденное судами.

Причем, мы говорим не только об одном едином законодательстве, мы говорим о федеральных законах (работающих на весь США), штатных законах (работающих для штатах) и еще зачастую законах округа.

б) В нем тоже есть много бумажек, которые нужно получать.

Условно говоря, я когда захотел работать по контракту, открывал свою LLC (Limited Liability Company). В тот момент, для меня это делал бухгалтер, но сейчас я примерно знаю, как это сделать.

— Нужно иметь Article of Organization (устав). После этого, надо придумать имя, запросить свободно ли оно в моем штате, заполнить форму, приложить к ней Articles of Organization, послать и получить в ответ бумагу о регистрации.

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

— Дальше, нужно получить Federal Employee ID (это типа идентификационный код для бизнеса) для этого нужно заполнить еще одну форму и послать.

— Для того, чтобы работать дома, нужно заполнить форму, послать и получить Home чего-то там Permit.

— И в нашем округе, нужно еще получить специальную лицензию, BPOL.

— После этого с Federal Employee ID, нужно пойти в банк и открыть банковский счет фирмы.

Та, что бумаги тоже достаточно, чтобы попа была чистой.

в) В США достаточно высокие налоги.

Например работая через этот LLC, мне необходимо платить

28% подоходный налог
15.3% FICA (social security, medicare) — аналог пенсионного сбора
6% штатовый налог
Итого: 49.3% максимум (вероятнее всего реальный налог, учитывая разные возможные вычеты, будет около 40%)

г) Но…. Что я считаю очень важным — В США все три первых пункта решаются просто

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

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

— Все в гораздо большей степени (не могу сказать 100%) происходит по закону. Никто не приходит в фирму с широко
оттопыренным карманом.

Как развивать свою фирму?

Четверг, Июль 15th, 2010

С пару недель назад, мне позвонил мой давний знакомый с которым мы уже добрых лет 7-8 не слышались и зашла у нас речь о freelance/небольших фирмочках.

Собственно говоря, он сказал, что он и еще несколько людей, которых он натренировал давно сидят на длинном, но не слишком прибыльном (низкий рейт) проекте. И вот, как бы начать расти/найти хорошие и жирные проекты.

Как я понимаю для небольших freelancer’ских фирм — вопрос стандартный и очень больной (собственно говоря, я сам через него проходил). Ну и для меня это уже второй или третий похожий похожий разговор с лидерами мелких команд, так что я выдал сходу свои мысли, а потом решил, что их стоит озвучить и в блоге.

Сразу скажу, нету у меня никаких данных, как «открыть глаза» лидерам таких команд и превратить маленькие конторы в IBM.

Начнем с начала:

1. Маржа прибыли

Для того, чтобы расти, нужно иметь возможность экспериментировать и инвестировать — пробовать найти проекты одним методом, другим методом, вкладывать деньги в что-то что отобьется чуть позже.

Если вы получаете X долларов и отдаете X долларов (включая вашу зарплату), то внезапно оказывается, что ваша прибыль равна нулю. И получается, что вы хотите получить что-то (рост) вкладывая ничего (0 долларов).

Безусловно, вы можете еще вкладывать время. Но опять же, если вы уже что-то делаете full time, то вам тяжело будет уделить больше чем дополнительные час-два в день (да и то они будут уже не слишком эффективные, так как вы будете откровенно уставшие).

Так вот, ситуация следующая. Для того, чтобы расти, ваша маржа должна быть достаточно большая. Поэтому поводу попытайтесь или поднять свой рейт или опустить растраты. Условно говоря, гораздо лучше иметь 2 наемных сотрудника и маржу прибыли 50%, чем 5 наемных сотрудников и маржу прибыли 10%.

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

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

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

2. Нишевость

Для того, чтобы продавать свои услуги дорого, вам нужно быть в нише, где конкуренция не так велика. Условно говоря, из существующих 100 фирм небольших фирм, которые бьются за заказы — 20 будут заниматься PHP, 15 будут заниматься RoR, 10 будут заниматься мобильными разработками и т.п. Будучи в первой группе, вы конкурируете с 20 фирмами разбросанными по миру и в результате вас прижимают к рейту $10/час, находясь в третьей группе, вы уже конкурируете только с 10 фирмами и вас прижмут к рейту $15/час. Находясь в какой-нибудь седьмой группе, где есть всего 2-3 фирмы, вы сможете получать $25/час. Естественно, я упрощаю, так как есть еще и спрос, кроме предложения. Но в целом, в небольших нишах соотношение спроса к предложению, лучше чем в mainstream.

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

Кстати, еще одна вещь по поводу большая и малая команда (при одинаковых прибылях). Если у вас команда меньше, то вам проще перебраться в другую нишу.

3. Новые заказчики

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

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

Я бы сказал, что поиск заказов можно разбить на три уровня активности:

— Пассивный

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

— Слегка активный

Это то, что делают большинство фирм. Ищут заказы на сайтах а-ля eLance и oDesk, иногда имеют связи с какими-то более крупными компаниями от которых падают какие-то проекты. Иногда к этому добавляется спаминье.

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

— Активный

Кто-то от фирмы ездит на конференции, выставки, активно «трется» с кучей разных фирм. А потом сидит на email’е и телефоне и пытается из них выбить заказы, договаривается о сотрудничестве и т.п. Плюс фирма участвует в закрытых или полузакрытых тендерах (до которых они опять же добрались через наработанные связи).

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

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

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

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

Продуктовые мысли.

Воскресенье, Апрель 11th, 2010

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

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

По каждому пункту я указал свои ошибки (который, ой как хотелось бы не совершать).

1. Опыт работы над продуктом в наемном виде не равен опыту создания своего продукта.

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

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

2. Всегда нужно иметь ПОЛНЫЙ список задач, который нужно сделать до выпуска. И когда я говорю ПОЛНЫЙ, я таки имею в виду ПОЛНЫЙ.

Как только, вы вспоминаете, что вам нужно крепко прикрутить пымпочку A к фитюле Б и что без этого ничего не будет работать, то это обязательно вносить в список.

Хотя я и работал по какому-то упрощенному Scrum процессу, записывая дела, но все равно, по приближению к release, я начал обнаруживать, что 20% оставшихся
задач таки хотят поесть 80% времени, так как выплывают разные отложенные, забытые или незапланированные задачи.

3. Нужно все делать Just In Time.

Когда работаешь над своим продуктом, то вероятнее всего количество ресурсов очень ограниченно. Нужно делать всего самое важное и только тогда, когда оно таки уже нужно.

То есть, с одной стороны, нельзя (точнее можно, но не выгодно) тратить два месяца на написание супер-пупер расширяемой архитектуры, которая дай бог будет использована к версии 3.0. C другой стороны нельзя и откладывать на потом решение важных проблем, так как их таки придется решать до выпуска продукта.

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

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

4. Выбор идеи для продукта

Если вы надеетесь получить инвестиции (или вложить много своих денег/времени), то вы можете работать только над большими идеями (либо которая должна собрать по $100 от миллиона людей, либо $1M от 100 компаний). Под маленькую идею вы не получите инвестиций, а свои деньги/время только потратите.

Если вы собираетесь потихоньку раскручивать продукт сами не беря денег у других и не вбухивая свои, то вы можете начинать только с маленьких идей ($20 долларов от 500 человек). На большую идею у вас просто не хватит времени и денег.

Этот пункт спорный… Но, мне кажется что большинства компаний так оно и будет работать.

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

5. Размеры релиза

Я бы рекомендовал до начала работы над продуктом делать релиз N0. Внутри этого релиза вы должны сделать все, чтобы доставить Hello World макет вашего проекта от вашего рабочего компьютера покупателю в товарном виде.

То есть, вы должны собрать, выложить, иметь документацию, website и т.п.
Это слегка противоречит принципу JIT, но зато очень помогает написанию списка задач.

Внезапно вы обнаружите, что желательно иметь build машину, которая собирает ваши изменения, какие-нибудь скрипты, документацию, веб сайт и т.п. Гораздо лучше обнаружить все эти детали в релизе номер 0, чем получить их незапланированными задачами релиза N1.

Касательно релиза N1. Выберите, ту функциональность которую вы хотите включить в него. Разбейте на три раздела — обязательно, желательно и возможно. Выкиньте желательно и возможно. Теперь разделите обязательно на две части — супер обязательно и просто обязательно. Просто обязательно отложите на релиз 1.5. Над оставшимся супер обязательно — начинайте работать.

6. Заручитесь поддержкой своей жены/мужа/девушки/парня/собаки/рыбок.

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

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

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

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

7. Используйте Open Source

Сейчас гигантское количество разного open sourc’а, который можно применять в коммерческих продуктах.

Лучше две недели потратить, на то, чтобы разобраться с готовым, отдебаженным, работающим, протестированным софтом и потом еще за неделю выкусить из него
готовый хороший кусок, чем за три дня написать похожую функциональность, потом добавить 5 фичи по 3 дня уже реализованных в open source варианте, а потом еще две недели все это дебажить, тестировать и доводить до ума.

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

8. Время на НЕ разработку

Последнее, что хочу сказать в этой статье, что не бойтесь тратить время на НЕ разработку (маркетинг, поиск open source продуктов, поиск похожих продуктов, их опробование и т.п.) В большинстве случае час потраченный на сторонюю деятельность сокращает на 5 часов разработку.