Los constructores se construyen de manera diferente
Brian Armstrong
Brian Armstrong9 jul, 03:55
La primera versión de Coinbase se lanzó con solo una billetera caliente, una propuesta arriesgada. Estábamos en versión beta y la aplicación le decía a la gente que no guardara dinero allí que no pudieran permitirse perder. Pero los montos de los depósitos seguían aumentando constantemente. Me di cuenta de que necesitábamos construir un sistema de almacenamiento en frío para mejorar la seguridad (de lo contrario, una sola violación de la billetera caliente significaría que éramos insolventes y la empresa moriría), y llamé a los dos expertos en criptografía/seguridad que conocía (@zooko y @octal si la memoria no falla) y les pregunté cuál sería la mejor arquitectura. Fueron muy serviciales y me dieron un curso intensivo, ya que nunca antes había construido un sistema así. Les pregunté cuánto tiempo llevaría construirlo y recuerdo que uno de ellos dijo que un equipo de ~ 10 personas podría tardar 18 meses en ponerlo todo en marcha y probarlo. El problema era que teníamos unas 8 semanas hasta que los depósitos totales en la plataforma superaran los activos totales de la empresa, y solo 2 ingenieros (incluyéndome a mí) para construirla. Estábamos viendo señales de que los piratas informáticos ya estaban tratando de entrar, un verdadero momento de vida o muerte. @satoshilite y yo nos pusimos manos a la obra para codificar el nuevo sistema de almacenamiento en frío desde cero e integrarlo en la aplicación. Hicimos algunas concesiones razonables, pero lo que se nos ocurrió fue fundamentalmente seguro y una mejora masiva. Incluso desempaquetamos algunas computadoras portátiles nuevas para la generación de llaves, almacenamos material de respaldo en varias cajas de seguridad y ubicaciones. A falta de una semana, comenzamos el proceso de transferencia de fondos al nuevo sistema. Ambos estábamos extremadamente privados de sueño (¡cómo ocurren los errores!), y nos emparejamos para verificar el trabajo de los demás mientras enviábamos la primera transacción de prueba, luego una más grande, y así sucesivamente hasta que se transfirió por completo. Respiramos aliviados y nos fuimos a casa a dormir unas 12 horas. Este fue uno de los logros técnicos de los que me siento más orgulloso de los primeros días de Coinbase: codificar nuestro sistema de almacenamiento de claves v2 con 2 personas en aproximadamente 8 semanas, lo que debería haber llevado a 10 personas 18 meses. Y funcionó y nos sirvió bien durante años. Ahora estamos en ~v5 de almacenamiento de claves, y hemos avanzado mucho más allá de lo que se nos ocurrió ese día. Pero si no lo hubiéramos sacado a tiempo, es muy posible que Coinbase no existiera hoy. Es un gran testimonio de cómo las limitaciones generan creatividad, los mejores talentos son importantes en las startups y los equipos a menudo son capaces de más de lo que piensan cuando no hay otra opción. La mayoría de los productos que tienen éxito tienen momentos tempranos como este, donde alguien tiene que dar un paso al frente y hacer una jugada en el campo que desafía todas las probabilidades. A medida que nos enfrentamos a nuevos desafíos y plazos en nuestros numerosos productos, siempre busco quién en el equipo está listo para dar un paso al frente y hacer que el juego ganador sea el juego en el campo.
226