Saltar al contenido
0%

Cómo convertirte en desarrollador de Solidity

Alchemy team headshot

Escrito por Alchemy

Publicado el 4 de octubre de 20227 min de lectura

‍¿Por qué debería convertirme en desarrollador de Solidity?

A medida que web3, un término usado para describir una versión más descentralizada y democratizada de internet, y su tecnología subyacente, blockchain, siguen ganando impulso, estar profundamente inmerso en el ecosistema podría generar beneficios tangibles similares a los de aprender a desarrollar aplicaciones de internet en la década de 1990.

La tecnología blockchain es lo que impulsa aplicaciones descentralizadas y casos de uso conocidos como los NFT, DeFi y las DAO. Para participar en dar forma al futuro de internet, convertirse en desarrollador de blockchain es uno de varios caminos para contribuir al panorama de web3, lo cual puede resultar tanto significativo como lucrativo, especialmente a medida que la tecnología se vuelve más práctica en entornos de consumo e industriales.

Teniendo esto en cuenta, quizás te preguntes qué lenguajes de programación de web3 aprender. Una de las mejores opciones es Solidity, un lenguaje de programación orientado a objetos para ejecutar contratos inteligentes en blockchains como Ethereum.

La sintaxis de Solidity es similar a la de Javascript y C, lo que significa que los desarrolladores de web2 pueden avanzar la curva de aprendizaje a un ritmo más rápido.

Según cryptocurrencyjobs.co, el salario base promedio para desarrolladores de Solidity en Estados Unidos es de $127,500, con un salario base mínimo de $80,000 y uno máximo de $180,000. Esta cifra puede variar según la ubicación, la empresa y la experiencia.

Trabajar en una tecnología poderosa, dentro de un entorno descentralizado, asíncrono, de ritmo acelerado y bien remunerado, es difícil de superar en el mundo cada vez más digital de hoy. Si aún no estás convencido, aquí tienes un breve resumen de por qué el movimiento web3 es una opción atractiva para los desarrolladores:

  1. Únete a más de 5,000 desarrolladores que aprenden cada semana
  2. Responde cuestionarios en Discord, haz nuevos amigos en Telegram, gana premios
  3. Aprende nuevas habilidades y herramientas de programación con un plan de estudios basado en proyectos
  4. Construye tu reputación como desarrollador de web3 con NFT de Proof of Knowledge

7 pasos para convertirte en desarrollador de Solidity

Ahora que tenemos una comprensión más formativa de qué es un desarrollador de Solidity y de los beneficios de ser parte de un movimiento en auge, exploremos las formas de aprender más sobre Solidity:

1. Inscríbete en un bootcamp

Un método eficaz para acelerar el aprendizaje de Solidity y convertirte en desarrollador de Ethereum es asistir a un bootcamp de Solidity. A través de bootcamps guiados por instructores, los desarrolladores pueden adquirir habilidades fundamentales de criptografía en blockchain, obtener una comprensión más profunda de Ethereum, construir y desplegar aplicaciones descentralizadas, y dominar el desarrollo de contratos inteligentes.

El Bootcamp de Desarrollador de Ethereum de 7 semanas de Alchemy University es una forma ideal para que los desarrolladores nuevos en web3 aprendan su lenguaje de programación más popular. Herramientas de aprendizaje personalizadas, desafíos de codificación interactivos y planes de estudio en constante evolución para adaptarse a una industria en crecimiento son algunos de los beneficios del programa de Alchemy University.

Si los desarrolladores son nuevos en el desarrollo en general, el curso intensivo de JavaScript de 3 semanas de Alchemy es un excelente prerrequisito antes de comenzar un bootcamp de Ethereum.

2. Domina los fundamentos de Solidity

Si prefieres un enfoque más personalizado para dominar Solidity, existen numerosas guías, artículos y videos disponibles públicamente que pueden ayudar. Estos recursos pueden ayudar a los desarrolladores a aprender más sobre terminología, herramientas y aplicaciones básicas de blockchain de manera autodirigida. Además, conocer los fundamentos de C++, JavaScript o Python también puede ser útil y acelerar el proceso de aprendizaje.

Sin embargo, para desarrollar aplicaciones de contratos inteligentes, los desarrolladores deben entender la diferencia entre prácticas seguras e inseguras. No se recomienda ignorar o pasar por alto las mejores prácticas de seguridad de contratos inteligentes.

Algunos conceptos fundamentales de Solidity que hay que dominar incluyen las funciones y los modificadores de Solidity. Las funciones de Solidity son bloques de código o conjuntos de instrucciones agrupados para ejecutar una tarea en particular. En general, las funciones de Solidity se definen usando la palabra clave function, seguida del nombre de una función única que no coincida con ninguna de las palabras clave reservadas. Además, las funciones pueden tener una lista de parámetros que contienen el nombre y el tipo de dato de cada parámetro.

Los modificadores de Solidity son análogos al patrón decorator, usado en la programación orientada a objetos. En esencia, un modificador puede cambiar el comportamiento de la función a la que está asociado. El caso de uso principal de los modificadores es verificar automáticamente una función antes de su ejecución. Si la función no cumple con el requisito del modificador, se genera una excepción y la ejecución de la función se detiene de inmediato.

3. Aprende herramientas complementarias de Solidity

Convertirse en desarrollador de Solidity requiere una comprensión amplia de las herramientas de web3. Herramientas complementarias como Hardhat, Alchemy y Remix (IDE en línea) elevarán tu perfil de aplicación, ya que muchas empresas usan stacks tecnológicos similares.

Hardhat

Hardhat viene integrado con la red Hardhat, una red local de Ethereum diseñada para desarrollo. Desplegar contratos, ejecutar pruebas y depurar código es posible sin salir de tu máquina local.

Al ejecutar contratos y pruebas en la red Hardhat, puedes imprimir mensajes de registro y variables de contrato llamando a la función console.log() desde tu código de Solidity. No olvides que, para usar esta función, deberás importar hardhat/console.sol en la base de código de tu contrato.

Foundry

Foundry es un kit de herramientas extremadamente rápido, portátil y modular para el desarrollo de aplicaciones de Ethereum, escrito en Rust. Foundry consta de tres elementos distintos: Forge, Cast y Anvil.

  • Forge: una red de pruebas de Ethereum, similar a Hardhat y Truffle
  • Cast: una herramienta con muchas funciones para interactuar con contratos inteligentes basados en EVM, enviar transacciones y obtener datos de la cadena
  • Anvil: un nodo local de Ethereum en la red Hardhat, similar a Ganache
  • Chisel: un REPL de Solidity rápido, práctico y detallado

Además, hay otras herramientas para desarrolladores de blockchain que se pueden usar. Aunque no es una lista exhaustiva, aquí hay algunas herramientas sugeridas para revisar:

  1. Truffle: un entorno de desarrollo, marco de pruebas y pipeline de gestión de activos para Ethereum
  2. Brownie: un marco de desarrollo y pruebas basado en Python para contratos inteligentes dirigidos a la Máquina Virtual de Ethereum (EVM)
  3. Echidna: define propiedades para contratos inteligentes y luego usa fuzzing para detectar fallos de seguridad
  4. Remix: un IDE potente y de código abierto para escribir, compilar y depurar contratos de Solidity desde el navegador

4. Adquiere experiencia práctica desarrollando en Solidity

Los tutoriales y cursos son los métodos principales para aprender desarrollo en Solidity, ya sea que busques crear un contrato inteligente de NFT, una DAO on-chain o una aplicación de finanzas descentralizadas. Estos tutoriales de web3 funcionan como experiencias guiadas donde los participantes pueden aprender de forma asíncrona a completar una tarea específica siguiendo documentación escrita y videos explicativos.

Para comenzar, considera explorar los tutoriales de Solidity de la serie Road to Web3 de Alchemy, que incluyen:

  • Cómo desarrollar un contrato inteligente de NFT (ERC721)
  • Cómo construir una dApp de DeFi "Buy Me a Coffee"
  • Cómo crear NFT con metadatos on-chain
  • Cómo crear una galería de NFT
  • Cómo crear un NFT dinámico
  • Cómo construir una dApp de staking
  • Cómo construir un marketplace de NFT
  • Cómo construir un juego de apuestas en Optimism
  • Cómo construir una dApp de intercambio de tokens con 0x API
  • Cómo crear una aplicación de redes sociales descentralizada

5. Participa en un hackathon de Ethereum

Los hackathons son eventos donde personas de diferentes orígenes se reúnen para desarrollar un producto mínimo viable que resuelva un problema del mundo real. Los hackathons de Ethereum son oportunidades fantásticas para hacer nuevas conexiones a nivel global, construir tu portafolio de web3, obtener experiencia práctica de desarrollo y, potencialmente, incluso conseguir un trabajo con alguna empresa patrocinadora del evento.

Ya sea que compitas de forma virtual o presencial, los hackathons pueden brindarte una plataforma para adentrarte aún más en el mundo de web3. Actualmente, los estándares de referencia en cuanto a hackathons de web3 son los eventos de EthGlobal y Gitcoin. Ambos ofrecen capacitación integral y experiencia práctica.

6. Audita contratos inteligentes por recompensas

Auditar contratos inteligentes por recompensas es otra forma de obtener experiencia práctica, ganar recompensas y comprender cómo funcionan los contratos inteligentes. Además de los programas de recompensas patrocinados por empresas individuales y protocolos descentralizados, existen plataformas para descubrir programas de recompensas, tales como:

  1. Plataformas nativas de web3: Immunefi y HackenProof
  2. Plataformas tradicionales: Bugcrowd y HackerOne
  3. Recompensas gestionadas por proyectos: Ethereum Foundation y 0xProject

7. Postula a empleos de desarrollador de Solidity

Con los fundamentos y la experiencia práctica, el siguiente paso es considerar postular a un puesto de desarrollador de Solidity a tiempo completo. Te encontrarás trabajando con compañeros de equipo de todo el mundo, construyendo productos, servicios e infraestructura para el ecosistema de web3 y las tecnologías descentralizadas.

¡No olvides que la energía, la empatía y el aprendizaje proactivo también son extremadamente importantes!

Actualiza tu currículum y LinkedIn

Al postular a un puesto de desarrollador de Solidity, es importante actualizar tu currículum y LinkedIn para orientarlos hacia web3. Asegúrate de destacar tu perfil, experiencia laboral, proyectos, educación, habilidades, certificaciones y un enlace a tu portafolio.

Como último punto, también es buena idea incluir información cuantitativa, lo cual te ayuda a demostrar tu impacto a reclutadores y posibles empleadores de manera convincente.

Investiga puestos en bolsas de trabajo de Web3

Investigar puestos en bolsas de trabajo de web3 es una forma eficaz de explorar roles que podrían encajar bien contigo. Sitios como web3.career, cryptocurrencyjobs.co y web3jobs.so son buenos lugares para comenzar.

Las grandes empresas de web3 como Alchemy, OpenSea y Coinbase cuentan con recursos internos dedicados a la búsqueda, el reclutamiento y la contratación, lo que significa que las vacantes probablemente estarán publicadas en su página de carreras.

Por último, los aspirantes a ingenieros de Solidity pueden explorar bolsas de trabajo como Indeed y Monster.com en busca de empleos de cripto publicados por empresas de web2, así como grandes empresas de web3 que publican sus vacantes en varios sitios para obtener mayor visibilidad.

Background gradient

Construye magia blockchain

Alchemy combina los productos y herramientas de desarrollo Web3 más potentes con recursos, comunidad y un soporte legendario.