This design is ok only if you are willing to accept a single point of failure for all office switches, web farm, sql, file-server and internet.
This design is ok only if you are willing to accept periodic spanning-tree hits every time links flap. By the way, the Cisco SG series doesn't support rapid-pvst, so you have to live with one spanning-tree for all vlans (I'm assuming you're using vlans, no?).
Honestly it's going to get worse if you add redundancy to this 100% switched network because then you have more spanning-tree to deal with. But I'm guessing nobody hired you to be a network engineer... you seem to be a coder who is likely moonlighting as a network guy. Thus, bask in the plausible deniability of the bad design!
Improve this design by adding redundancy and some routed segmentation between the offices. Keep in mind that if you do routing, you'll need to renumber the segments that are behind a router; you'll also need something that supports SVI's or dedicated routed interfaces.
A routed hub and spoke topology would be better but it require more fiber density than you can get on the SG series, and it would require running fiber (which may not have been done yet). It would also require things that support dynamic routing on fiber interfaces. SG series switches have a rather limited routing table size.
Is this okay?
I wouldn't do it that way, but many things depend on requirements. If your employer is really cheap, maybe it's the best you can do.
Does a cascade of switches affect overall performance?
Others addressed over subscription in this topology; then again if your uplinks are 10% utilitized all day long it wont matter. That said, you can't scale a design like this very well.
Can the last node obtain gigabit file transfer speeds from the other nodes?
As long as there isn't congestion along common paths.
Can the Main Switch handle every client?
It depends on how much load your clients are generating.
Honestly I'd be more worried about the questions you haven't asked... I elaborated on some of those above.
BTW, in a setup like this where you've run copper to every switch in the topology, uplink ports are not necessarily obvious unless you standardize that "the first two ports are my uplinks" (or something like that). You might not care now, but wait until you get your first broadcast storm and have to track down where it's coming from. Trust me... be sure it's easy to find the uplinks. It's also good to label your uplinks with source / destination on both sides.