Auth0: Orígenes

Antes de arrancar con Auth0 en el 2013, Eugenio trabajaba para Microsoft (en el campus principal en Redmond) y yo había co-fundado una empresa de consultoría con un compañero de la facultad. Nos conocimos con Eugenio en el año 2004. En ese momento yo tenía 24 años y él 35...

Auth0: Orígenes

Hola 👋

Una de las cosas más difíciles a la hora de tomar la decisión de trabajar en un lugar nuevo es imaginarte como va a ser ese lugar. En general lo que vemos de afuera es una proyección pulida de la realidad. Es difícil imaginarse la dinámica de trabajo, la gente, cómo se toman las decisiones, la cultura, y muchas otras cosas del día a día.

La idea de este blog es que conozcas más sobre Auth0. Lo hicimos en español para que transmita lo más fiel posible lo que es Auth0 a los hispano parlantes.

En este primer post se me ocurrió que sería interesante contar sobre los orígenes de Auth0 y la historia de Eugenio y mía como founders.

Antes de Auth0

Antes de arrancar con Auth0 en el 2013, Eugenio trabajaba para Microsoft (en el campus principal en Redmond) y yo había co-fundado una empresa de consultoría con un compañero de la facultad. Nos conocimos con Eugenio en el año 2004. En ese momento yo tenía 24 años y él 35.

Los dos estudiamos ingeniería. Eugenio en el ITBA y yo en la Facultad de Ingeniería de la UBA (FIUBA). Ambos compartimos la pasión por construir y resolver problemas. A Eugenio, siempre le gustó el hardware. En su tiempo libre hace cosas como estas:

El logo de Auth0 hecho con Nano Leaf panels (mucha trigonometría 😱)

Yo soy más del software. Desde que tuve mi 386DX, y no tenia mas que el HELP de MS-DOS, mi curiosidad por lo que podía hacer con la computadora hacía que me quede infinitas horas frente a la pantalla.

Volviendo al 2004. Eugenio nos había contratado para un proyecto, cuando recién arrancábamos con Southworks (la consultora que fundé). De ahí en más trabajamos juntos durante 8 años en diferentes iniciativas para su equipo llamado “patterns & practices”.

patterns & practices” fue un equipo pionero  dentro de Microsoft en trabajar con metodologías ágiles y en hacer open source (en el 2004 OSS era tabú en Microsoft). También fue uno de los primeros grupos en tener equipos remotos, algo que también nos serviría en el futuro. Hacíamos aplicaciones de referencia, hands-on labs, frameworks que resolvían cross-cutting concerns como acceso a datos, logging, seguridad, tracing, etc. El objetivo era mostrar las mejores prácticas en la plataforma .NET y lograr que las empresas adopten esta plataforma que Microsoft había lanzado hace poco.

Fue una experiencia muy enriquecedora. Estar expuesto a la maquinaria de ingeniería de Microsoft te da una perspectiva de lo que es una empresa de producto a gran escala y con alcance global. Uno se da cuenta que el producto no es solo el código que se shippea, sino que también es todo lo que existe alrededor: la documentación, los ejemplos, el servicio, la comunidad, el soporte, etc. Este aprendizaje definitivamente lo volcamos a Auth0 años más tarde.

Un libro que cambió nuestras vidas

Volviendo a nuestra historia con Eugenio, uno de los proyectos más interesantes que hicimos juntos fue escribir un libro titulado “A Guide to Claims-Based Identity”. En el año 2008, Microsoft había anunciado Azure, arrancando un cambio estratégico para mover su negocio a la nube (su principal negocio siempre había sido vender licencias de software como Windows, Office, SQL Server, etc.). Mover aplicaciones legacy a la nube requiere de algunos cambios de arquitectura. La autenticación de usuarios es uno de esos cambios. En ese entonces, las empresas utilizaban la autenticación de Active Directory (AD). Microsoft había integrado todo entre el browser (IE), el web server (IIS), el directorio (AD) y la red. Todo esto bajo un protocolo llamado Kerberos. La premisa era que todo esté en la misma red y así fluiría la identidad del usuario en todo su ecosistema. Pero la nube (y el smartphone) cambió completamente el contexto.

El libro que publicamos en 2010

La solución que planteamos en este libro era “extirpar” el proceso de autenticación de las aplicaciones y ponerlo en un servicio central (ej: login.company.com) que autentique al usuario y genere un token firmado criptográficamente. Este servicio implementaría un protocolo (como SAML o OAuth2) y podría correr en cualquier lado (en la nube, en tu datacenter, etc) logrando que el directorio de usuarios y la experiencia de autenticación esté unificada en un solo lugar. De forma similar a lo que hace Google (account.google.com).

El libro fue publicado en el 2010. Al poco tiempo escribimos una segunda edición con más escenarios debido al éxito que tuvo la primera edición. Esto fue un catalizador para nosotros. Veíamos que había un shift en la industria. La nube, el smartphone, software como servicio, APIs, estaba ocurriendo todo junto. El libro nos permitió meternos de lleno en la problemática.

El click

Sumado a este shift tecnológico, en el año 2011, ocurrió el primer breach de usuarios. Fue el de Sony Playstation y más de 77 millones de usuarios y passwords fueron comprometidos. Este fue el primero de muchos más (hoy en día son casi 1000 millones de cuentas que fueron comprometidas). Esto puso en primera plana a muchas empresas y por lo tanto los CISO/CIO/CTOs empezaron a pensar dos veces la idea de “guardar los passwords”.

Timing

Por último, empezaron a surgir servicios de infraestructura para developers como Twilio, Sendgrid y Stripe. Estas APIs venían a resolver algún problema puntual (como enviar un SMS, un email o aceptar pagos con tarjeta). Los developers empezaron a ver con buenos ojos la idea de tercerizar estos servicios de infraestructura. ¿Para qué invertir el tiempo en hacer algo que no es un diferenciador?

A mitad de 2012, luego de haber hecho varios proyectos implementando esta arquitectura en organizaciones grandes, era evidente que había un fricción muy grande a la hora de implementar utilizando los productos existentes. Un proyecto podía llevar un año y cientos de miles de dólares en consultoría.

Lanzarse al vacío

Finalmente, a mitad de 2012 decidí irme de Southworks y empezar a desarrollar un MVP mientras hacía consultoría para pagar mis gastos. Eugenio renunció a Microsoft en Febrero de 2013 y eso marcó el inicio oficial de Auth0.

El equipo inicial 6 de Diciembre de 2012 (tranqui la picada)

Durante ese primer año no sabíamos bien a donde teníamos que apuntar el producto. ¿Hacemos un producto que resuelva “single sign on” para empresas o hacemos un producto para developers que necesiten agregar autenticación a sus aplicaciones? El código era el mismo, pero la UX y la audiencia era diferente. Uno era para IT Admins y el otro para developers.

Una herramienta para el IT Admin?
O una herramienta para los developers?

Venderle a developers no es fácil. Hacíamos la cuenta de cuántos usuarios de 13 a 100 dólares por mes necesitaríamos para vivir de esto… y nos deprimíamos 😬. Pero era muy satisfactorio ver que estábamos construyendo algo útil para mucha gente, por más que no pagaran.

Uno de los primeros usuarios en pagar Auth0 🥰

El golpe de suerte

A mitad de 2013, tuvimos nuestro golpe de suerte. Una empresa de seguros contrató Auth0 para resolver los problemas de autenticación de todas sus aplicaciones. Tardamos 8 meses en cerrar el deal. Tenían varias aplicaciones core que habían desarrollado y otras más que iban a desarrollar y querían tener una infraestructura de identidad unificada. Reemplazamos un producto de Microsoft que venía con Windows Server (ADFS) que se les había caído y no sabían cómo solucionarlo. Fue nuestro primer contrato de 6 dígitos y tuvimos que portar el software para que corra en VMWare en sus data-centers. Recuerdo que viajamos con José con pen-drive en mano a sus oficinas para instalarselo.

Auth0 corriendo en VMWare (con arte ASCII!)

Siete años más tarde, siguen siendo clientes y los migramos a nuestra servicio en la nube.

Este cliente fue muy importante para nosotros. Pudimos encontrar el sweet spot entre “developers” y “enterprise”. Los que decidieron usar Auth0 eran los Developers y Arquitectos de la empresa que querían solucionar este problema. Poder usar una herramienta que resuelva los problemas que tenían, con buena documentación y APIs.

La mayoría de nuestros clientes empiezan probando Auth0. Algún programador/a o arquitecto/a que está arrancando un proyecto nuevo o reescribiendo una aplicación y quiere resolver esto sin tener que escribir código. Hacen una prueba de concepto y luego nos contactan para contratar el servicio. Es muy potente tener este formato de venta “bottom-up”.

Auth0 Hoy

Fast-forward al 2020. El viaje fué y sigue siendo una montaña rusa. Con desafíos nuevos cada año y con momentos inolvidables. Hoy somos casi 700 empleados, tenemos 6 oficinas, con una cultura remote desde el día 0, procesamos más de 3,000 millones de logins por mes de casi 10,000 clientes.

Logo-humano en el offsite de 2019 en Cabo, Mexico

Ahora sabés de dónde venimos, quiénes somos y cómo arrancamos. Creo que somos privilegiados de tener la oportunidad de poder construir y operar este tipo de infraestructura. Resolver un problema global y contribuir a que la internet sea más usable y segura es una responsabilidad y un desafío súper motivante.

Si te interesa y te identificas con esta misión, fijate las posiciones que hay abiertas.