Dino Crescimbeni - Contributor proposal [16/05/2022 - 15/08/2022]

Dino Crescimbeni - Contributor proposal [16/05/2022 - 15/08/2022]

Background
I’ve been an accountant for eight years, during which I’ve worked with a team of 8 people. During that time, I automated several tasks using Python and PowerQuery, and wrote documentation, standardized and implemented the Kanban methodology on various business processes.

In 2021, I decided to switch careers and focus on learning the JavaScript stack during off-work hours and weekends, finally going full-time on learning in December and starting a bootcamp in January 2022.

My whole life I’ve been tech-oriented. I wrote my first line of code when I was 13 and had been programming on and off since then. When Bitcoin was starting, I remember trying to set up a mining node on an old HP laptop (I don’t know if I succeeded, but who knows, maybe there’s a laptop somewhere worth a couple of bitcoins).

I’m interested in blockchain development to translate current governance processes into a robust decentralized system. My vision for the future is a world where small organizations can easily set up fully decentralized and transparent processes that are also scalable and secure.

I’m currently contributing to the DXvote project on the front-end but want to learn and gather a more profound knowledge of smart contracts and solidity development.

This is my first contributor proposal and was introduced to DXdao by Augusto. I’ve known him since we were in high school (some 15 years ago… damn).

Timeframe
Trial: 16/05/2022 - 15/06/2022
Two months: 16/06/2022 - 15/08/2022

Proof of work

  • Set permissions core function call: Link
  • GuildCard Component Refactor: Link
  • AddressButton Component Refactor: Link

Proposed scope of contribution
Goals

  • Make front-end contributions to the DXvote repo, maintaining and increasing the code quality.
  • Add new features to improve the user experience.
  • Refactor components to support the new DXvote UI.

Responsibilities

  • Keep learning about DXvote code architecture and governance in general.

Compensation
Experience level: 2
Time commitment: full-time

Trial period (1 month) [16/05/2022 - 15/06/2022]

  • 2.000 DAI (4.000 DAI * 50%).
  • 1.000 DXD (2.000 DXD * 50%), vested for 3 years with a 1-year cliff starting the 16/05/2022.
  • 0.8335% REP (1.667% * 50%).

Month 1 [16/06/2022 - 15/07/2022]

  • 3.200 DAI (4.000 DAI * 80%).
  • 1.600 DXD (2.000 DXD * 80%), vested for 3 years with a 1-year cliff starting the 16/06/2022.
  • 1.3336% REP (1.667% * 80%).

Month 2 [16/07/2022 - 15/08/2022]

  • 3.200 DAI (4.000 DAI * 80%).
  • 1.600 DXD (2.000 DXD * 80%), vested for 3 years with a 1-year cliff starting the 16/07/2022.
  • 1.3336% REP (1.667% * 80%).

Work experience
Past work for DXdao

  • Retaining chain connection on refresh: Link

Relevant links

10 Likes

Dino was introduced as a junior dev by Augusto but so far he has been doing an amazing job! Despite only just joining he is already grasping concepts well and contributing value shipping features!

4 Likes

There’s an error in the REP calculation. I’ve used 1.667% in the calculations, but the correct number is 0.1667%

So the correct values are:

Trial period (1 month) [16/05/2022 - 15/06/2022]

  • 0.08335% REP (0.1667% * 50%)

Month 1 [16/06/2022 - 15/07/2022]

  • 0.13336% REP (0.1667% * 80%)

Month 2 [16/07/2022 - 15/08/2022]

  • 0.13336% REP (0.1667% * 80%)
6 Likes

Awesome to hear that you’re already shipping features!

2 Likes

Retrospective

What went well

General stuff

  • The integration with the team went super smooth. From the very beginning, I felt welcomed by everyone. In these three months, I’ve shared both technical and personal talks, and both went excellent.
  • There’s openness when discussing new ideas and ways to implement stuff. There are problems unique to our specific domain whose solution might not be evident initially. In those cases, we voice our opinions on the subject matter and decide a way forward. Being the newest on the team, I always felt heard and had the space to communicate my point of view.
  • I immensely enjoyed meeting in person with Augusto and Milton to code. It was valuable to have them at hand to ask for guidance and opinions and had a good time while coworking.

Guilds / DAVI

  • We added a lot of valuable features to DAVI (former DXvote) that I believe helped to push the product forward: a smoother UI interaction, the possibility to simulate transactions beforehand, various validations and feedback to the user to improve UX, and actions to the proposals, to name a few.
  • We have improved the number of tests considerably.
  • We implemented changes suggested by the audit results, adding code and tests to improve the reliability of the smart contracts.
  • From a personal point of view, I’m most proud to have added the ability to simulate the calls in the proposal using the Tenderly API, research and implement a library to show many proposals efficiently, add a call to set guild permissions, and added logic to handle vote ties in the smart contract.
  • I work best when I can focus for 2-3 hours without distractions. Given that we only have a 30’ daily and some 60’ weekly meetings, I was able to block hours to do deep work and deliver quality code.
  • Halfway through these three months, we had the bi-annual contributor feedback. I received valuable comments from my peers and made a conscious effort to improve in those areas. I added one more review step to my PRs, hours after it’s done to take a fresh look at the submitted code and spot difficult-to-understand sections, confusing variable names, or code that can be further refactored.

What to improve

  • We significantly improved test coverage, but I think we can do better. Having more e2e tests prevent unexpected and breaking changes, leveraging our existing GitHub actions and setting a coverage threshold for new PRs.
  • We need to include more user feedback. I hope we implement a process to gather user feedback once we finish the MVP.
  • I will keep improving the quality of my code in two ways: first, by asking for feedback from the team, and second by reading books on the subject.

Contributions

Compensation adjustment

Due to personal obligations, I needed to take a week off, so 40 hours should be deducted from the final compensation. During those 40 hours, I was on an 80% rate. The second payment, therefore, should be:

  • $3.400 DAI
  • 3.800 DXD, vested for three years with a 1-year cliff starting the 16/07/2022.
  • 0.3167% REP
4 Likes