Solidity Interviews: Explaining External Call Risks Without Sounding Textbook (Reentrancy, Reverts, Gas Griefing)
Moderator Tip (Context & Framework):When answering Solidity interview questions on external call risks (reentrancy, revert DoS, gas griefing), lead with control flow boundaries and invariant protection rather than reciting textbook syntax.
> Technical Reference:Compare your answer against Question 1 in our Top 30 Senior Solidity Interview Questions & Answers Guide
> Structured Roadmap: Explore the full security interview sequence in the Smart Contract Interview Prep Hub
In a recent US DeFi team Solidity interview (remote loop), I got asked: “What are the risks of making an external call in a smart contract, and how would you mitigate them?”
I gave the usual (reentrancy, gas issues, relying on another contract), but the feedback vibe was: “okay… but where’s your engineering judgment?”
I’m trying to upgrade this from generic web3 interview prep into an answer that sounds like I’ve shipped smart contract security decisions—not memorized a list.
I can point to a small change I made once (switching a payout flow to pull payments + adding a test for a revert-in-loop case), but I’m not sure how to frame it cleanly in an interview.
I said the usual (reentrancy, gas issues, relying on another contract), but later I felt my answer was still a bit “checklist-y”.
If you’ve handled this in interviews: how do you explain external call risks in a way that sounds like real engineering judgment — not just buzzwords?
Do you explicitly talk about cases like external call reverts causing DoS, gas griefing, or the “control flow” problem (you hand execution to unknown code)? And do you mention Checks-Effects-Interactions, ReentrancyGuard, pull over push payments, or try/catch for external calls (>=0.6) as your mitigation structure?
Basically: what’s your go-to answer framework that actually stands out in Solidity interviews for web3 smart contract roles?