В следующем интервью основатель Qualia Лукас Хансен рассказывает, как его команда разработала новый продукт, который поможет агентам по страхованию титулов управлять сложностями процесса закрытия жилищной ипотеки в режиме онлайн. Он также подробно рассказывает о своем опыте работы с Meteor и о том, почему выбор Meteor позволил им бросить вызов существующим инструментам за счет максимальной производительности труда разработчиков, быстрого создания прототипов и реактивности приложений.

Расскажите нам о том, что вы строите в Qualia. Как вы решили сосредоточиться на конкретной категории?

Мы разрабатываем программное обеспечение для агентов по страхованию прав собственности, чтобы сделать процесс закрытия ипотечного жилищного кредита онлайн. Мы действительно заинтересовались этой идеей, когда один из моих соучредителей, Нейт Бейкер, работал с Джо Лонсдейлом в Formation 8 (который возглавлял нашу серию A) около полутора лет назад. Некоторое время мы изучали сектор страхования и ипотечного кредитования. Существует огромная сложность, запутанные механизмы распределения и часто несовпадающие стимулы между участниками рынка. Вся сложность и несовпадение создают возможности и действительно интересные технические проблемы для решения. Благодаря интересным техническим задачам мы смогли привлечь к работе множество ключевых игроков, таких как Джек Лукич, автор Семантического пользовательского интерфейса, а также множество наших друзей из Стэнфорда. Мы создали основательный продукт за 15 месяцев, и теперь у нас есть много новых проектов, над которыми мы очень рады работать.

Когда вы открыли для себя Метеор? Как вы решили использовать его для создания Qualia?

Когда мы только начали работу с Qualia, никто из нас не имел большого опыта в разработке веб-приложений. В Стэнфорде мой соучредитель Джоэл Готцеген сосредоточился на искусственном интеллекте. Я изучал прикладную математику. У нас обоих было сильное инженерное образование, но отсутствие опыта работы с клиентской частью означало, что у нас было очень мало предрасположенностей при выборе стека. Это позволило нам выбрать самую лучшую технологию, которая существовала в то время.

При поиске подходящей технологической платформы мы имели в виду несколько очень специфических ограничений:

  1. Наши конкуренты - это в основном нативные приложения для Windows, поэтому наше приложение должно быть действительно быстрым, одностраничным. Реактивность Meteor и компенсация задержки были ключевыми для достижения этого ощущения в нашем приложении.
  2. Наш продукт действительно большой и сложный, поэтому наш стек необходимо оптимизировать для повышения производительности труда разработчиков и быстрого создания прототипов. Время, потраченное на возню с разными библиотеками, чтобы заставить их работать вместе, потрачено впустую. Это не проблема для Meteor, поскольку он был построен с нуля как полноценный фреймворк.
  3. Наша компания состоит из действительно талантливых инженеров и специалистов в области математики и искусственного интеллекта, не имеющих большого опыта в веб-разработке, поэтому наш технологический стек должен быть доступным.
  4. Каждое большое приложение в конечном итоге выходит за рамки встроенного фреймворка, поэтому должно быть хорошее сообщество, надежная документация и хорошо написанный, читаемый исходный код. Многие фреймворки, включая Meteor, имеют первые два, но Meteor довольно уникален тем, что имеет красивый, читаемый исходный код.

Сейчас они немного устарели, но главными вещами, которые убедили Me Meteor в правильности выбора с учетом этих ограничений, были Почему Meteor Дэна Даскалеску и чтение Discover Meteor.

Каков был опыт разработки? Что работает? Что нет?

Опыт был исключительно положительным. Большую часть времени Meteor уходит на второй план и просто работает. Существует большая экосистема пакетов Meteor, которая предоставляет большую часть того, что вам нужно для начала работы: схемы уровня приложения, конструктор форм, управление файлами, маршрутизатор, учетные записи / аутентификация и т. Д. Сначала было немного сложно разобраться. все пакеты, которые нам нужны, но в настоящее время все это подробно описано в Meteor Guide.

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

Meteor построен на удивительном наборе абстракций; Tracker, Minimongo, DDP и Pub / Sub упрощают строительство в Meteor. Наши разработчики не тратят время на шаблон или клей, и мы можем создавать продукт невероятно быстро. Мой главный совет компаниям, строящим на Meteor, - действительно понять, как Meteor работает на глубоком уровне (исходный код очень доступен), и потратить время на создание абстракций поверх Meteor, которые точно соответствуют потребностям вашего приложения. Meteor - потрясающая платформа, и ее можно расширять.

Мы заметили одну интересную вещь: иногда мы можем использовать наш опыт для улучшения ядра Meteor. Например, некоторые из наших документов Mongo необычно велики и вызывали проблемы с производительностью при недействительности запроса Minimongo. Мы разделили основной пакет Minimongo, сделали несколько оптимизаций, и все стало намного быстрее! Поработав несколько недель над разветвленным пакетом и не заметив никаких проблем, мы решили, что попробуем объединить его в ядро. Meteor оказался чрезвычайно восприимчивым, и несколько недель спустя наша оптимизация была в следующем выпуске Meteor.

Насколько велика команда в Qualia? Каков опыт инженеров?

Сейчас у нас 30 человек, около половины из которых инженеры. Многие из наших инженеров из моего выпускного класса в Стэнфорде, который внес огромный вклад в нашу культуру. Это забавно - у большинства из нас нет большого опыта в веб-разработке; мы больше людей математики и искусственного интеллекта. Так что интересно наблюдать, как быстро новые сотрудники могут стать продуктивными. Частично это связано с тем, что люди, которых мы нанимаем, действительно умны, а также потому, что Meteor прост и элегантен. Нет миллиона случайных фактов, которые нужно запоминать, чтобы работать эффективно. Мы также уделили первоочередное внимание привлечению в команду нескольких отраслевых экспертов, которые помогут нам создать правильный продукт.

Вы хотите нанять? Где тебе нужна помощь?

Да, мы ищем по-настоящему сильных инженеров (сюрприз!). Мы сосредоточились на людях, которые очень аналитичны и необычайно талантливы в области вычислительной техники или математики, вместо того, чтобы требовать от людей особого опыта в веб-разработке. Конечно, опыт веб-разработки - это плюс, но для нас важнее всего чистые инженерные способности и интеллект. Частично это связано с тем, что мы обнаружили, что такие люди, как правило, могут очень быстро овладеть необходимыми навыками, а частично потому, что наши инженеры сталкиваются с разнообразным набором проблем, выходящих далеко за рамки простой веб-разработки.

Что дальше у Qualia и вашей команды?

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

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

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

Ранее Лукас представлял свой доклад 3000 часов в Meteor на Meteor Night в июне 2016 года. Посмотрите его выступление ниже или просмотрите его полные слайды здесь.