Лучшие статьи и кейсы стартапов
Включить уведомления
Дадим сигнал, когда появится
что-то суперстоящее.
Спасибо, не надо
Главное Свежее   Проекты

Александр Красс

Автоматизация рекрутинга - FriendWork Recruiter
Подписаться Написать
27 июл 2016 в 21:22
Подробная информация
Комментарии
5
NoSQL хороши, но, к сожалению, еще недостаточно, чтобы полностью заменить РСУБД для большинства проектов.

Если посмотрите на крупные проекты, то чаще всего можно увидеть в качестве основного хранилища MySQL/PostgeSQL/Microsoft SQL Sever, а за кэширование отвечают Redis, Memcached или самописное решение.

Проблема в том, что MongoDB мало кто умеет настраивать так, чтобы оно работало при действительно "больших" нагрузках, а при "средних" справляются идеально и другие решения. MongoDB позволяет сделать быстрый старт и получить достаточно неплохую масштабируемость "из коробки" на несколько серверов. Это многих и привлекает, причем, может быть, что вполне оправданно. Однако, мне жаловались коллеги, что MongoDB в какой-то момент начинает вести себя очень непредсказуемо. Например, может потерять часть данных. Если это допустимо для проекта, то все ок. Главное никогда биллинг там не хранить ).

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

А самое главное, что никто не мешает использовать MySQL или аналоги таким же образом, как и NoSQL-решение. Не делайте Join'ы и все будет хорошо. Производительность допустимая, надежность намного выше. Нет проблем с огромными базами, а если у вас SSD, то и скорость вообще будет отменная.
24 Апреля 2014
6
Я сейчас напишу достаточно оригинальный вариант стека технологий. Но только на первый взгляд.

1. Всегда выбирайте те технологии, которые ваш опытный технический директор (ведущий разработчик) знает лучше всего. Экспериментировать с новыми технологиями в стартапе - это чаще всего гиблое дело. Сам проект и так рискованный, а вы еще добавляете технологические риски. Плюс старайтесь брать первых разработчиков с опытом работы над максимально похожими проектами – иначе будете набивать очень болезненные шишки. Если с этим пунктом все хорошо, то дальше можно не читать :).
2. Чаще всего говорят, что надо выбирать PHP. С этим можно и нужно спорить. Есть доводы за и против – укажу некоторые из них. За: много программистов знают этот язык, а значит в теории их легче найти; немало крупных и успешных проектов написаны на PHP (хотя лучше сказать начинали с него – потом добавляются демоны на C, отдельные сервисы на других языках программирования и т.п.); относительно легко научить начинающего специалиста азам этого языка, а потом давать выполнять простые, но трудозатратные задачи под жестким контролем старших коллег (кстати, частично, поэтому крупные проекты используют PHP). Против: сейчас очень много более эстетически приятных альтернатив PHP (плюс стоит учитывать моду), поэтому многие продвинутые разработчики уже перешли с него на другие языки, а молодежь изначально учит вместо PHP Java/C#/Ruby/Python, вывод – тяжело найти талантливых специалистов (они почти все уже очень хорошо трудоустроены); на PHP гораздо легче написать плохой код, чем на Java и C#, вывод – больше багов; программисты на Java и C# почти всегда имеют более сильную базу, чем на других языках программирования (хорошо понимают зачем нужны паттерны проектирования, рефакторинг, как писать безопасный код, что такое сложность алгоритма и поэтому, например, их SQL-запросы работают быстро), а значит, в итоге будут более продуктивны в сложном проекте.

В нашем проекте http://FriendWork.ru мы в основном используем C# (ASP.NET MVC ) и Java (для сервисов). Многим это покажется очень оригинальным выбором… но если присмотреться к окружающим проектам, то вы увидите очень много сложных проектов на ASP.NET MVC или на ASP.NET. Дело в том, что он дает очень много плюсов на ранних этапах разработки и хорошо подходит для систем со сложной бизнес-логикой. Что нам нравится в ASP.NET MVC: С# - это типизированный язык, в отличие, например, от Ruby (для некоторых это не плюс – дело вкуса), ASP.NET MVC взял лучшее у фреймворка Ruby on Rails, с базой можно работать в рамках парадигмы Code First (пишешь код, а по нему автоматически генерится SQL-код для создания базы) – экономит очень много времени.

Многие спросят, а как уживаются вместе Java и C#? Зачем использовать C#, когда вы и так хорошо владеете Java или наоборот? Дело в том, что ASP.NET MVC, на наш взгляд, удобнее любой альтернативы на Java на данный момент. А вот в остальном нам больше подходит Java :).
23 Апреля 2014
6
Вопрос "нужен ли стартапу офис?" сводится к вопросу менеджмента в целом. Я придерживаюсь такого мнения, что любой инструмент менеджмента нужно внедрять не потому что это хочется и кажется правильным, а только когда есть четкое понимание, что без этого в обозримом (!) будущем проект ждут серьезные проблемы, которые нельзя решить по мере их возникновения, либо это слишком дорого. Конечно, при таком подходе нужен опыт. Зато команда показывает максимальную продуктивность, что возможно только при минимально возможном уровне бюракратии ).

Я коротко расскажу про то, как в моем проекте http://friendwork.ru появился офис.

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

Команда стала больше. Появлися PR-менеджер и еще один разработчик. В начале все активности можно было обсуждать по телефону/Skype/TeamViewer. Но скоро задачи стали сложнее и их стало больше. Я начал замечать, что иногда стоит почаще прозванивать своих коллег, потому что они сталкиваются с проблемами, пытаются их решать, но у меня больше опыта и я за пару минут могу посоветовать решение, и компания сэкономит 1-3 часа на этом. Начал задумываться об офисе, обсудил с разработчиком – он тоже был за и очень хотел работать вне дома. Его как раз отвлекала обстановка и больше нравилось личное общение.

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

Но офис офису рознь. График у всех, кроме отдела продаж, гибкий и я разрешаю не приходить в офис своим сотрудникам, если вижу, что они справляются с поставленными задачами. Но 1-2 раза в неделю появляются все, потому что личное общение никакой Skype и TeamViewer не заменят – оно просто позволяет намного быстрее решать определенные виды задач.
31 Марта 2014
7
Мы активно использовали соцсети для PR'а http://FriendWork.ru

За 12 дней получили первые 3000 установок за счет вирусного эффекта, не вложив и копейки. Поняли, что идея интересна аудитории. Потом написали в несколько хороших СМИ - Деловой Петербург, Бумага, Cossa и еще парочку. Мы сразу присылали уникальный текст для публикации, обычно СМИ брали из него фрагменты и разбавляли текстом в своем стиле. Еще сами опубликовали статью на Хабре.

Мы на тот момент не ставили целью рост, поэтому со СМИ работали достаточно мало - больше сконцентрировались на продукте.

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

Потом мы стали делать очень хорошие мероприятия, где яркие компании и стартапы искали себе сотрудников - http://fest.friendwork.ru (ближайшее 22 марта в СПб). О них пишут СМИ, что тоже приносит какое-то количество пользователей, но не так много, как мы хотели, хотя узнаваемость сервиса повысилась ).
24 Февраля 2014