4 ms·
Warning: rant, sample of 1 My first year freelancing was my last (for now). The only client I landed, following the guidelines stated on the link (cover lette
by Uberphallus 8y ago
Warning: rant, sample of 1
My first year freelancing was my last (for now).
The only client I landed, following the guidelines stated on the link (cover letter, etc), was for a very niche job (IoT/FPGA related). I undersold myself as it was my very first gig on Website.
The client ended up hiring me and another guy from Country. They explained what they had, what they wanted, and I explained the problems with their architecture and possible solutions. The other guy was like, yes, all can be done, yes, great idea, sure, it's easy, yes, of course, nothing is wrong, it's so smart.
I was constantly dropping quotations from RFCs, IEEE, FCC and recommending hardware choices for backing it up with documentation, but they consistently followed the other guy's advice, to the point of deploying extravagant and unnecessary hardware: think of a workstation plugged to a Zynq, plugged to 3 Arduinos, and a Stratix 10 in the middle with a plethora of custom circuits and transceivers attached kind of mess, just because the guy only could find libs and IPs that ran precisely on those devices to do the puzzle that he himself sold to the client. I suspect this was not out of pure incompetence, but an evolutionary way to make one seem expert and make the project take longer to cash in more money.
And all of this was ON REMOTE. We literally had to ask the remote office to verify connections, and status LEDs on the devices, and obviously debugging out of business hours was an absolute PITA.
The other guy was insanely productive, in a meaningless kind of way. Everything was documented but badly, some stuff had CAD, some hand drawn; the designs had some corner cases well thought and commented, while basic things completely overlooked. Half of the code was copied from OpenCores, Arduino examples, etc, and the other half didn't make any sense. The only way I could describe him is as a bored engineer on the 5th day of a meth binge.
One day I just snapped during an argument, calling their project "Internet of Spaghetti", and called it quits. Then the client contested all the hours I filed, and Website took their side, I assume because they had high rating and I had just started.
Then I went back to corporate, it's boring but I don't have to deal with such bullshit.
- maximp 8y ago>The only way I could describe him is as a bored engineer on the 5th day of a meth binge. what an image
- paulpauper 8y agoYeah a corporate job may be 'soul draining' but at least they are legally req. to pay you. This sudden interest and push to freelancing and gigs seems like a way to inure people to the loss of this ironclad right to get paid.
- Uberphallus 8y agoExactly. I explored legal options, but with Client, Website and me based in different countries, it was gonna be just too expensive.
- starbist 8y agoI guess remote isn't for everyone.
- Uberphallus 8y agoHonestly it could all have worked out just by having the hardware at home. Instead of one of each, buy two, have them shipped. It's one of the things I asked, they refused because of budget and trust. Hindsight is 20/20, but I should have dropped it in that moment.
- thomk 8y agoYou are thinking like an engineer not like a businessman. I'm speaking from experience here as I have been (recently) guilty of the same thing and I assure you my case was much, much worse. Engineers love to solve problems. They love it SO MUCH that they very often do it for free (see: opensource). You yourself said you 'underbid' the project. You were trying to solve a problem with logic, reason and an attempt to deliver a clean, well functioning, properly designed product. Business do not care about those things. They care about 2 things: 1. Money 2. They want it to work Your best defense against stupidity that has money is to collect money as often as possible. Get a deposit, stop working if they are late on payment, changes cost more, phone calls where I'm consulting to you costs money. It's hard to hear, but the other guy kind of did it right. Save yourself a lifetime of lessons that I have learned (or stay in corporate) by simply treating every single client like you are running a business. Be transparent about your unwavering focus on payment. You can do that and still be friendly by the way. You (and I) think "I'll do an amazing job, this product will be clean, fast and standards compliant AND cheaper!" And when you are done all they will say "does it work?" The unclean truth is, customers don't care about well functioning, well designed code until NOT having it costs them money. See #1 above. Of course you have the choice to not continue working with these types of clients, but, the truth is there's going to be some insanity in any business. Lessons are hard to learn and the best you can do is protect yourself and be honest, meaning, "This isn't the right way but it'll work and save you a few bucks, is that OK?"
- derangedHorse 8y agoI would honestly read a blog dedicated to stuff like this, 'Freelance Business Lessons for Engineers' or something like that.
- testb 8y agoSeems like a problem with trying to remote for hardware in the first place? But this is a great example of how (remote) freelancing/consulting doesn't work for everything.