Issue 84: What Every Blockchain Dev Gets Wrong About Gas Optimisation Ft. Dmitrii Senotov, Blockchain Engineer, Faraway

Author :
Nishant Singh
January 12, 2025

Welcome to Coffee with Calyptus! This week, we chat with Dmitrii Senotov, a seasoned Blockchain Engineer at Faraway and former Rarible developer.

Dmitrii takes us through his journey from technical writer to Solidity expert, sharing his perspective on gas optimization, smart contract security, and the evolving role of AI in development. Whether you're a budding blockchain dev or a seasoned pro, his insights are a must-read!

What were key moments that shaped your path as a Solidity and blockchain developer, and what sparked your initial interest in this field?

My journey into the blockchain space started through a friend who was involved with blockchain technology as early as 2012. His excitement about Bitcoin and later Ethereum, especially the potential of smart contracts, piqued my interest. His enthusiasm was contagious, and I started following the space more closely.

My first professional step into the blockchain world was as a technical writer for an online course about blockchain. I researched extensively on Bitcoin, Ethereum, and Solidity, which gave me a solid foundation in these technologies. While I wasn’t initially sure about becoming a developer, I knew for certain that I wanted to stay in the blockchain field. After that, I taught several classes on blockchain, which grew into a two-year experience. During that time, I realized the growing demand for blockchain expertise, and soon after, I landed my first Solidity developer role. That marked the beginning of my career as a developer, and I’ve been working as a Solidity engineer for the past five years.

What are common misconceptions about gas optimization, and what tips would you give developers for efficiency?

A common misconception is that gas optimization is always worth the trade-off. In reality, simplifying code and maintaining readability is often more valuable than squeezing out minor gas savings. The biggest gains typically come from strategic decisions—like minimizing on-chain data storage, or from business choices, such as opting to deploy on L2 instead of L1 for projects that require heavy transactions.

My main tip, though pretty obvious, is to test gas usage with every small change. This practice helps track the impact of new features on gas consumption and sharpens your intuition for the dos and don'ts of gas optimization. Also, you should always try to stay up to date with new approaches by reading what others write about gas optimization best practices.

As both a developer and educator, what advice would you offer to new blockchain developers aiming to make a meaningful impact?

My advice to new blockchain developers would be to focus on the technology, not the money :). Blockchain is all about building decentralized systems that can make a real impact, so it’s important to be passionate about the tech. Also, choose meaningful projects that you believe in and that contribute to the space. And don’t forget to stay up to date with new trends and developments, things move fast in blockchain, and staying informed helps you stay ahead.

With tools like ChatGPT and GitHub Copilot now available, how do you see the role of AI evolving within development teams, and what are the boundaries of its use for you?

I’m not worried about AI taking developers' jobs. I actually think it’s a great tool to boost productivity. It’s awesome for things like editing your writing, helping with research, or even coming up with ideas. But I wouldn’t rely on it to do the job for you. AI can make mistakes, especially with complex logic or context, so it’s important to double-check its work. I see AI as more of an assistant that can help speed up the process, but not take over the whole thing.

What are the biggest security challenges you’ve encountered in smart contract development, and how do you approach building secure and reliable code?

The biggest security challenges I’ve faced in smart contract development have often been related to business logic and architecture. To build secure contracts, it’s crucial to go through at least one audit, though the more audits, the better. You really can’t ensure the security of your code without them. I also try to think like an attacker and look for ways vulnerabilities might sneak in. And to keep up with the latest threats, I follow what auditors and security experts are sharing on Twitter—it’s a great way to stay in the loop. Looks like staying up to date is the advice I keep giving for pretty much every topic :)

Solidity Challenge 🕵️‍♂️

What will the howManyEvens() function return if the input is (0, 20) ?

calyptuscareers_Solidity_Challenge_2e821fd6

Jobs 💼

We have over 200 roles on our platform from companies like Aave, Aragon, Balancer, Gnosis, etc. Check out a select few below:

ZK Auditor - $50-150k - remote, global, contractor/parttime
Head of Engineering - $250-350k - remote, NA/SA, fulltime
Big Data Engineer - $150-200k - remote, 4hr overlap with CET
Product Designer - $90-120k - remote, Europe

Solidity Challenge Answer ✅

Answer: 30