RNG means you are never going to get "an optimal build"
I always aim for DPS and use low speed characters for high speed rolls (theif & pointy shields - keeps everyone together, no high speed loaners that will often die, alone)
I always though "weight" was a negative, but it governs how far you bounce back when hit in certain ways.
Note that you can build a thief with such high dexterity + 2x specials that they wont die (under certain circumstances)
And I often reorder my units, with at least one magic in position 2 after a "heavy hitter" or "heavy unit".
On avarage I get to around 50 battles, and usually only die by fighting 3x Elite Uniques (like 7000 Gold and heaps of gear if you can beat them - almost impossible if there is a Healer in there)
Almost forgot, my best runs usually have 2x Healers, at least one Ice, and 1 or more other magics.
And remember to steer clear of battles with too many Fire guys or too many Electric guys (4 is too much for many runs).
Hope that helps, cheers