Solana LadyBugs
Project name: Solana LadyBugs🔗
Client:🔗
Role:🔗
- Blockchain developer | Backend developer
January, 2022 – May, 2022
Havana, Cuba
Elasbit is a Chilean company that had the idea to create a NFT collection and some games based in this collection. The basic idea was to sell the NFTs to users and give special rewards in the games to the NFTs owners. The client already had the solution to mint the NFTs using Metaplex but he had not the necessary smart contracts for the games. Using my experience in Rust, smart contracts and blockchain I was capable to quickly learn about Solana blockchain and create the smart contract for the games. I reviewed dozens of smart contracts deployed in Solana and this help me to learn about common architectural patterns, this patterns was applied to the implemented smart contract improving performance, readability, code quality, genericity, user trust and security.
Hard / Technical achievements🔗
- Proposed the use of cryptographic techniques (e.g. password salting) to store the user data on the smart contract improving security.
- Designed, in coordination with the Product Manager, the smart contract.
- Implemented and deployed the smart contract.
- Designed and implemented a state machine for the smart contract to guarantee a correct information flow improving security.
- Implemented a technique to serialize floating point numbers in Anchor, helping to add new functionalities to the smart contract.
- Tested the smart contract to guarantee the correctness of the solution.
- Participated in pair programming sessions with teammates to fix bug or reviewing code, improving code quality and readability.
- Implemented an AWS Lambda function to query the blockchain to know the different status of the sent transactions.
- Used AWS Lambda functions to implement the backend functionalities.
- Designed, implemented and tested the frontend state machines using XState, guaranteeing a correct information flow in the frontend, improving code quality and readability, improving security and helping to separate the frontend logic from the components.
- Helped to design the frontend state machines to get a visual representation of the frontend information flow.
- Used the pattern of actor model in the state machines of the frontend improving code quality.
- Researched about Solend (lending/borrow platform in Solana) and Jupiter (swap aggregator platform in Solana) and how to use its APIs.
- Fixed AWS Step Functions using Serverless Framework.
- Used the branching model of git flow to get a better organization in the project development.
- Proposed a trustless architecture for the smart contract using economics incentives, helping to delete the user trust on the backend.
- Helped to integrate frontend and backend services using subscription pattern.
- Integrated the backend with the smart contract.
Soft achievements🔗
- Attended to daily meetings with the team to coordinate tasks and find potentials problems in the development of the solution.
- Attended to meetings with the Product Manager to propose or define the features (improvement to features) of the smart contract.
- Shared blockchain knowledge with others developers to help them to build the solution.
- Introduced the system solution to newcomers team members onboarding they in less than three days.
- Helped to install the necessary frameworks/libraries/tools to newcomers team members increasing the incorporation speed of the new teammates to the project.
- Explained the code/implementation of the solution to newcomers team members increasing the incorporation speed of the new teammates to the project.
- Asked for help to others more experienced developers to solve difficult issues in my implementation/code.
Others team members:
- Alexei Zubizarreta Perez (Client | Product Manager | Software Architect)
- Yunier Saborit Ramirez (Software Engineer | Cloud Engineer | Cloud Architect)
- Raúl Adolfo Borrego Marqués (FrontEnd Developer)
- Yosdany Blanco Miranda (Frontend Engineer)
- Yadisnel Galvez Velázquez (Backend Developer | Cloud Engineer)
- Adrian Páez Ruiz (Backed Developer)
- Eder Despaigne Herrera (DevOps | SysAdmin)
- Julio Cesar Sanchez Garcia (DevOps | SysAdmin | AWS Cloud Developer)
- Stack:
- Solana, Amazon Web Services (AWS), Python, TypeScript, Rust, Anchor Framework, Serverless Framework, XState, React, BitBucket, GraphQL, Boto3, GQL (GraphQL client), AnchorPy, PyTest, Node.js, Mocha, Chai, Solana Web3.
- keywords:
- Blockchain, Cryptography, Asymmetric Cryptography, AWS Lambda Functions, AWS Step Functions, AWS AppSync, State Machines, AWS DynamoDB, AWS CloudFormation, Hash, Asymmetric Encryption, AWS ApiGateway, WebSockets.