Skip to main content
Solflare
51k Ratings
Install
hands pointing at each other

You send the final builds. The designer doesn’t like the spacing, and your QA crashed it on every device imaginable. It feels like we’re going to go to (a) war (of words), but I’ve learned that peace is actually - doable! Here’s how.

Picture this Slack thread blowing up on a random Tuesday:

Designer:

“Dude, the safe areas are ignored—the whole header is hiding under the notch. And those colors? Dark mode looks like a vampire attacked the UI.”

QA:

“Crash on Samsung Galaxy A53, Android 13. Pull-to-refresh in offline mode = infinite spinner + null pointer. Also found 12 visual bugs on low-end devices. Repro steps attached.”

Me (the dev):

“It works perfectly on my iPhone 15! The animations are smooth, the code is clean—why are you guys always nitpicking??”

Designer:

“Because it has to look good, not just ‘work’.”

QA:

“Because users don’t care if it works on your phone.”

Me:

“Fine, I’ll fix it… again.”

Classic war, right? Except… that whole argument? All me. First in my head, then in the company.

I’ve been grinding as a mobile developer for years – solo building my own apps but I’ve also worked as a contractor. I’ve played every role and lived the full dev-designer-QA drama triangle. Yes, it used to feel like constant trench warfare.

But I’ve learned that peace is actually – doable. 

It just takes swallowing some pride and building tiny habits. Here’s my real-talk survival guide—stories from the front lines, how I felt in the mess, and what actually worked.

a chat between a designer, developer and a QA arguing

1. Accept the harsh truth: Your code is never as perfect as you think

You pour hours into a feature, run it on your shiny new iPhone, and it feels chef’s kiss. Then the designer says the spacing is off, and QA crashes it on a budget Android. Your gut reaction? “It works fine—leave me alone.”

Then I realized: they’re not attacking me, they’re saving the users (and me) from embarrassment. Swallowing that ego pill early turned frustration into relief. Now I expect feedback and the app ends up way better.

2. Talk to designers before you touch the keyboard

Old me: get the Figma file, code it pixel-for-pixel, drop the build, pray. Inevitably: “That’s not what I meant…” followed by five redesign rounds.

Now I hop on a 10-minute call or Slack thread first: “What’s the non-negotiable vibe here?” or “Any 2px details that’ll break your heart?” It feels awkward at first (I’m introverted), but it saves days of pain and makes me feel like a pro collaborator instead of a code monkey.

3. Feed QA early and often

Dumping “final” builds on QA on a late Friday kills trust. I did this once with a sensitive payment feature; QA found over 20 bugs, creating a Monday ticket war zone that left me panicked and ashamed.

Now, I push incomplete, messy builds daily: “Here’s the skeleton, break it.” This early collaboration allows them to catch issues sooner, offer better feedback, and feel like we’re building together—much less stressful..

4. Learn just enough of their language

You don’t need a design degree or QA cert—just a few key terms to stop the dumbest misfires.

Just 15 minutes in HIG/Material docs (or just asking) fixed it. Conversations got fast, respect went up, and I stopped feeling like the guy yelling across the room. Small effort, massive chill.

5. When they flag something, start with “Thank you”

In the early days, I’d argue every point. One QA ticket spiral turned into a heated Slack thread that killed everyone’s vibe for days. Felt tense and isolated.

Now my default is “Thanks for catching that—can you share the device/repro?” It feels fake for the first few times, but it instantly defuses tension. Turns potential fights into quick fixes. I feel calmer, and they feel heard.

6. Use the same tools whenever you can

Early me: designs in scattered Figma dupes, bugs via email/Slack chaos, specs lost in Notion. Once burned a whole afternoon hunting icons and tokens, pinging the designer nonstop. Felt like a total disorganized clown.

Now: shared stack only. Figma dev mode for everything (redlines, specs, flows), ClickUp tickets with mandatory Figma links and acceptance criteria. One shared doc max for extras.

7. Share the wins publicly

I used to just quietly push updates. Then I started tagging designers and QA in release notes or team Slack: “Shoutout to [name] for the pixel-perfect screens and bulletproof testing—this launch wouldn’t slap without you.”

The first time I did it, they replied with 🔥 emojis and later bent over backward to help on a crunch. Felt warm and fuzzy, like actual team spirit instead of silos. Now it’s a habit, and the goodwill compounds.

We all just want the same thing

Designers want it beautiful. QA wants it unbreakable. You want it shipped without your soul crumbling. Same goal, different angles. Once you see it that way, the daily grind turns from war to the teamwork we’ve seen at Solflare. Happy building!

Share this article: