skip to content
← blog

105 projects and one number i will not risk

5 min read

105+ projects finished on upwork. 100% job success score.

the second number is the one that runs my business, and i want to explain what it actually does to your decisions, because from outside it looks like a badge and from inside it is a constraint.

the number is not a rating

a job success score is not an average of stars. it is closer to a record of whether people regretted hiring you, and it moves on things that are not entirely in your control. a contract that ends quietly with no feedback can still hurt. a client who disappears mid project can hurt.

so 100% is not a claim that i am the best engineer on the platform. it is a claim that i have never finished a contract that left someone worse off.

that record took years to build and could take one project to lose.

what it makes me do

say no to stack mismatches. this is the big one. a job posting arrives, the budget is good, the client sounds reasonable, and it is 70% work i have done and 30% a framework i have never shipped. the money says yes. the number says no.

i decline those now. not because i could not learn it, but because learning it on someone’s paid timeline means either i eat the extra hours or they get a slower project than they were promised, and one of those two things ends in bad feedback.

say no to impossible scopes. the specific pattern: fixed price, a deadline set before anyone has looked at the system, and a request for blanket agreement to the whole thing before any access is granted. that is not a project, it is a trap with a number attached. the audit has to come before the commitment, or the commitment is fiction.

ask before quoting. i used to open with my rate. now i ask what range they have in mind first. partly this is negotiation, but mostly it is a filter. a client who cannot say a number does not have a budget, they have a hope, and that project ends badly regardless of who builds it.

write down risk carve outs. if a project has a part i genuinely cannot estimate, it goes in the proposal as an explicit exclusion before anyone signs. clients almost never object. they object later, when the surprise arrives and nobody warned them.

what it costs me

being honest about the downside: this makes me conservative.

there is work i have turned down that i probably could have done, and every one of those was a chance to learn something on someone else’s dime, which is how most people grow. i traded some of that growth for a clean record.

it also makes me slow to move into new categories. the shift from pure infrastructure work into ai systems happened later than it should have, precisely because early on i would have been proposing on work i had not yet shipped.

i solved that by building my own things instead. every side product on this site is partly that: a way to have shipped something in a new stack before a client ever pays me to. the products are portfolio and practice at the same time.

the part nobody tells you

a good record does not bring you better clients on its own. it makes you eligible for them. the sourcing is still work, still cold, still mostly rejection.

what the record actually does is remove one objection from a conversation you still have to start. that is worth a lot and it is not the same as inbound.

the rule i would give someone starting

pick the number you are protecting and be explicit about it, because you will make hundreds of small decisions against it.

mine is that record. it means i turn down money regularly, and i have never once regretted a project i said no to. i have regretted several i said yes to.