Ícono del sitio La Neta Neta

Cómo Expensify se abrió camino hacia una pila tecnológica robusta y escalable

Cómo Expensify se abrió camino hacia una pila tecnológica robusta y escalable

Expensify EC-1 Parte 4: Ingeniería y tecnología

Toma un cierre mire cualquier startup ambiciosa y encontrará la pugnacidad anidada en su núcleo. La terquedad y la convicción obstinada en el valor de lo que una empresa quiere hacer realidad es a menudo el mayor motor de su éxito, y la gente de estas empresas también tiende a compartir esta cualidad.

Por lo tanto, no estaría muy lejos de la realidad decir que la gente de Expensify es un grupo obstinado, para el beneficio final de la compañía. Este grupo de piratas / hackers P2P que se propusieron crear una aplicación de gestión de gastos pegada a sus instintos, creó sus propias reglas. Hicieron preguntas en las que pocos pensaron, como: ¿Por qué tener muchos empleados cuando puede encontrar una manera de hacer el trabajo y alcanzar una rentabilidad impresionante con unos pocos? ¿Por qué trabajar desde una oficina en San Francisco cuando Internet le permite trabajar desde cualquier lugar, incluso en un velero en el Caribe?

En cierto modo, tiene sentido: si eres un pirata, al diablo con las reglas, ¿verdad? Y más aún cuando nadie puede explicar las reglas en primer lugar.

Con eso en mente, uno podría asumir que Expensify decidió preguntarse: ¿Por qué no construir nuestra propia pila de tecnología totalmente personalizada? De hecho, Expensify ha tomado varias decisiones tecnológicas que fueron recibidas con incredulidad, desde tener una interfaz de código abierto y un desarrollo móvil multiplataforma hasta contratar contratistas para capacitar a su IA y reclutar colaboradores de código abierto, pero su fe en sus propias decisiones ha valido la pena. a lo largo de los años, y la empresa está lista para la OPI en cualquier momento.

La cantidad de ventaja tecnológica que disfruta Expensify debido a tales elecciones es una pregunta abierta, pero una cosa está clara: estas opciones son clave para comprender Expensify y su hoja de ruta. Vamos a ver.

Construido sobre lecho de roca

Creo que otra pregunta que Expensify también decidió hacer en sus inicios fue algo como: ¿Por qué no tener nuestra base de datos sobre una tecnología construida para software de aplicación a pequeña escala?

Puede parecer increíble, pero Expensify en realidad se ejecuta en una base de datos personalizada construida sobre SQLite. Esto es sorprendente, porque a pesar de ser uno de los motores de base de datos más ampliamente implementados, SQLite es conocido por ejecutarse en sistemas pequeños e integrados como teléfonos inteligentes y navegadores web, no alimentando bases de datos a escala empresarial.

Puede parecer increíble, pero Expensify en realidad se ejecuta en una base de datos personalizada construida sobre SQLite.

Esta base de datos personalizada se llama Bedrock y su arquitectura es única. Expensify lo explica como un “RDBMS optimizado para la replicación autorreparable en conexiones WAN (Internet) relativamente lentas y poco confiables, lo que permite implementaciones de múltiples centros de datos de alta disponibilidad / alto rendimiento sin ningún punto único de falla”. RDBMS significa sistema de administración de bases de datos relacionales, que describe SQLite y otras bases de datos basadas en filas donde las entradas están interconectadas entre sí.

Pero, ¿por qué Expensify construiría esto en lugar de optar por cualquier cantidad de soluciones de bases de datos empresariales ampliamente disponibles?

Para responder a esa pregunta, debemos remontarnos a los primeros días de la empresa, que originalmente era un proyecto paralelo de su fundador y director ejecutivo, David Barrett. Su idea inicial era desarrollar una tarjeta prepaga para personas sin hogar, pero esto requería poner un servidor en la red Visa, lo que traía varios requisitos y desafíos estrictos. “Yo diría que uno de los más difíciles [parts] era que necesitaba la capacidad de replicar y conmutar por error automáticamente ”, dijo Barrett a TechCrunch cuando lo entrevistamos hace un par de meses.

Esta no fue una hazaña fácil en 2007, pero Barrett estaba preparado para el desafío. “Acabo de llegar a un momento en el que la tecnología disponible en el mercado no era tan buena. Y resultó ser un desarrollador de software de igual a igual que tenía mucho tiempo libre y realmente quería construir esto para ponerlo en el backend de Visa ”, dijo. El aspecto P2P era importante, ya que Barrett tenía las habilidades para hacerlo funcionar. Sus primeras contrataciones para Expensify, los ingenieros P2P con los que había trabajado en Red Swoosh y Akamai, también eran inusualmente adecuados para el trabajo.


Source link
Salir de la versión móvil