Comencé a codificar contratos inteligentes hace cinco años, a la edad de 38 años, y pasé de no tener experiencia en programación profesional a crear contratos inteligentes de vanguardia.
Muchos han preguntado cómo podrían seguir un camino similar. Si bien no existe un recurso o secreto particular para el éxito, existe un patrón que también puedes utilizar.
Aquí está mi viaje.
En 2018, me mudé recientemente con mi esposa y mi hijo pequeño de Melbourne a Lisboa, para que todos pudiéramos estar más cerca de la familia. Tenía una carrera decente como ingeniero de supercomputación y arquitecto de soluciones para banca de inversión y pensé que Lisboa sería lo suficientemente grande como para encontrar un trabajo.
Pronto, descubrí que el mercado laboral en Lisboa no necesitaba ingenieros en supercomputación y que mi experiencia como arquitecto de soluciones solo me permitiría desempeñar aburridos puestos de mando intermedio.
Me había interesado la tecnología blockchain durante mucho tiempo, pero nunca me metí en ella. Luego leí un artículo sobre lo difícil que era contratar ingenieros de blockchain y vi una oportunidad.
Le escribí al autor para agradecerle por la inspiración para buscar trabajo en blockchain. Empezamos a hablar y, junto con un amigo suyo, decidimos iniciar TechHQ, una consultoría blockchain con elevados ideales. Dentro de nuestra consultoría de tres personas, yo sería el experto en tecnología.
Tuve aproximadamente un mes para pasar de ser un arquitecto de soluciones corporativo a crear proyectos basados en blockchain que pudiéramos vender a los clientes.
Sin experiencia previa, yo sería el experto en tecnología.
Una de mis tareas era escribir artículos técnicos sobre blockchain para atraer clientes, al igual que el artículo que me llevó a conocer a mis socios. Escribir estos artículos y hacer público lo que aprendí sería clave en mi carrera.
Mi primer artículo sería sobre
Nuestra primera oportunidad de negocio surgió unos meses después con un proyecto para
Los resultados no fueron tan estelares: fueron excesivamente diseñados e ineficientes incluso para los estándares de 2018.
Habiendo adquirido algunas capacidades de codificación sólidas y con Bernardo solo capacitado en desarrollo frontend, me hice cargo de los contratos inteligentes de CementDAO. Desafortunadamente, debido en parte a la implementación ineficiente de Fixidity, nunca avanzamos a la etapa de la red principal.
Mientras buscábamos más clientes, seguí experimentando para poder escribir más artículos, porque así es como esperábamos conseguir clientes. Al final se me ocurrió una idea interesante para un
Justo cuando la quiebra parecía inminente, este mismo código nos aseguró otro cliente:
A pesar del terrible desempeño de los contratos inteligentes, solo necesitaban una prueba de concepto en Ganache, que entregamos. Aprendí lecciones importantes sobre la arquitectura de contratos inteligentes,
A pesar del terrible desempeño… aprendí lecciones importantes
Nuevamente no teníamos ingresos y teníamos muy poco efectivo. Decidí renunciar a mi salario y comprar un tercio de la empresa para no quebrar. No pensé que tuviéramos muchas posibilidades de triunfar como empresa, pero no importaba, estaba codificando, estaba aprendiendo, me estaba divirtiendo. Parecía una oferta económica para obtener una excelente experiencia blockchain.
Mientras buscábamos más clientes. colaboré en
Al final, la empresa volvió a quedarse sin dinero y todos tuvimos que empezar a buscar trabajo. Entonces, me topé con un
Después de conversaciones con
Animado por este éxito, afronté el desafío de OpenZeppelin de renovar sus contratos de control de acceso. Hice un trabajo de vanguardia sobre el tema de la aplicación fallida de la cadena de suministro, lo perfeccioné con AllianceBlock y nuevamente
Sabía que podía hacerlo. Esto finalmente llevó a la publicación de
Lo había logrado. Parte de mi código finalmente estuvo activo. Y nada menos que con OpenZeppelin.
Todavía necesitaba un trabajo y me convertí en instructor de Blockchain para BeyondSkills. Tendría que crear cursos en línea para enseñar programación de solidez. Como siempre, no estaba realmente calificado para el trabajo. Sabía cómo codificar algunas cosas, pero tenía grandes lagunas en mis conocimientos. Hasta entonces ni siquiera había firmado un contrato.
Tuve que hablar en video y hacer tutoriales sobre desarrollo de solidez. También tuve que ser minucioso porque los cursos debían ser consistentes. El mismo patrón que con los artículos aplicados aquí; Fui aprendiendo cosas e inmediatamente enseñándolas, y eso me llevó a aprender mucho sobre el desarrollo de la solidez.
Desafortunadamente, la empresa cerró debido a impugnaciones legales y ese contenido nunca se hizo público. Quizás sea mejor así.
Fui aprendiendo cosas e inmediatamente enseñándolas y eso me llevó a aprender mucho sobre el desarrollo de la solidez.
Mientras grababa esos cursos, se me acercó
Para entonces, ya había codificado Fixidity, publicado varios artículos sobre matemáticas de punto fijo y traté de ayudar tanto a OpenZeppelin como al equipo central de Solidity, sin éxito. También sabía que los AMM con funciones logarítmicas no eran triviales y conocía a un tal Mikhail a quien podíamos contratar para que funcionaran.
Fui el primer empleado en @yield. Convencí a Allan para que contratara
Aprendí mucho – sobre
Una de las cosas que aprendimos es que, a diferencia de Uniswap, necesitaríamos realizar cambios en el protocolo para buscar la adecuación del producto al mercado. Como nuestros contratos eran en su mayoría inmutables, pronto comenzamos a trabajar en Yield v2.
Yield Protocol v2 estuvo activo durante aproximadamente dos años y aprendí mucho de él, pero ahora está cerrando. Si bien nuestro trabajo técnico fue de primera categoría, las tasas fijas no se adaptan al mercado de productos en las finanzas descentralizadas a partir de ahora.
De nuevo en la naturaleza, estoy eligiendo el camino difícil nuevamente y en lugar de conseguir otro rol de ingeniero líder/CTO, me estoy estableciendo como asesor de otras empresas emergentes que podrían beneficiarse de las lecciones que aprendí. No existen manuales sobre cómo hacer esto y sé que las lagunas en mi conocimiento son enormes, pero también lo son las oportunidades de mejora.
A estas alturas deberías ver el patrón. Me quedo fuera de mi zona de confort, fallando a menudo, pero siempre enseñando a otros lo que aprendo. Este mismo artículo podría verse como un ejemplo.
Si tengo suerte, encontraré algo que alguien quiera, como CementDAO, AllianceBlock, contratos para OpenZeppelin, cursos BeyondSkills y, finalmente, Yield. Si no puedo encontrar a alguien que lo necesite, siempre hay algo que aprender y sobre lo que escribir, como todos mis artículos.
Me quedo fuera de mi zona de confort, fallando a menudo, pero siempre enseñando a otros lo que aprendo.
El ciclo de intentar, fallar, aprender y enseñar no es mi invención, pero funciona. A menudo me hace parecer un idiota, y tal vez eso sea lo más difícil para algunos. Yo mismo llevo mis fracasos con orgullo.
Gracias por leer. Espero que esto te dé algo de inspiración. Buena suerte.