I worked for 10 years in the software departament of a large IT distributor. We had a B2B web portal to sell IT equipment. The clients were all business, ranging from small (~$1000/mo) to large ($10M/mo). Now, the clients were still complaining but not as much as I figure they do in a B2C environment. However, what made it worse, in my opinion, is that when they complained we had to listen. This is not a single _user_ out of 500k, it's a single _paying customer_ out of 5000. This resulted in us having to implement a lot of one-off features that were specific to a single or a couple of clients on a platform used by all of them. That in turn resulted in the codebase becoming a monstrosity and me being frustrated and tired by feeling like I had 5000+1 bosses. I stayed so long only because the software departament and the people in it were so awesome.
And yes, having to implement features that are rarely if at all used (and sometimes removed before they ever make it into production) is demoralizing.
I think it all depends on the customer(s) - be they business or consumer.
I worked for about two years and a half in web development, and in one case the application was widely, widely used. Everything was on fire and users complained constantly. Saying that I don't miss it would be a big understatement.
I'd love to hear more about how such a system works, purely for engineering value's sake, because it happens to be a thing I find very interesting from an outsider's standpoint.
On the surface, as someone mostly naive about cellular RF, I know you're dealing with things like
- Given <n> buildings, how do you optimize for reception around (and, for 1000 bonus points, inside) said buildings, while minimizing echos (and, subsequently, in-band noise that the RF frontends can't mechanically filter) from signal reflections?
- Given a tunnel long enough to need a snake-antenna system (what are these properly called, and are they actually snakes? I just see long thick cables at the (dark) entrances to train tunnels), how should you place the towers near both ends of the tunnel to optimize handover?
- Given <random bunch of hills>, how do you optimize placement within terrain, elevation, landscape features, etc?
I'm guessing your system has access to highly-accurate databases of landscape/terrain and building geometry/geography (basically the machine-readable equivalent to Google Maps)?
The reason I mention the above is to characterize/elucidate this problem space to hopefully attract interested replies encouraging you to find out what details your boss will let you share. :D
Also I'm on vacation and I won't see my boss for another week :).
Regarding bugs: We were a very small team of just 2-3 engineers. One could argue that the business model was just wrong, but if we wanted to hire another 5+ engineers we'd have to dial up the ads like crazy (of course leading to even more user outrage). And back in those days (we're talking 1999-2012 here) our foremost problem wasn't bugs, but keeping up with the ever-rising traffic on a highly dynamic system.
I've been inclined to work on BTC rather than BTB because I imagined it will have more impact than the other (e.g. facebook vs salesforce)?
Both communities were focused on everyday problems, one dealt with parenting and the other was about cooking (recipes). I wouldn't have stayed for over 10 years with the former if there were never any positive things. It always felt a bit like I was doing something for the greater good (I don't want to sound arrogant here). Seeing how women finally got pregnant after many frustrating months (or even years) with the help of one of our tools (a period tracker) was very rewarding. There were people supporting each other when one of them lost child after child during pregnancy for whatever reasons.
Most of the users that kept complaining about everything were long-time users. Many didn't have anything to do with the main topics of the platform. They just stayed because they liked the community and discussed politics or whatever in one of the sub-forums.
In the end, the company was bought by a large publisher, all the staff (12 people or so) was basically let go (after 10+ years) and nowadays it's an almost unusable user-interface mess with ads in every corner. Oh, and that one specific sub-forum the users used to complain about stuff? Yeah, that was shut down completely to just shut everybody up. What a simple and effective solution for a pesky "problem" ...
To be honest, I never liked the idea of being heavily dependent on advertisement to finance the platform, but sadly that's just the way the Internet works.
After I became a father of two, my priorities shifted towards my family and I'm now more interested in doing something good for and especially WITH my kids instead of working a stressful job.
This! I worked for two huge (~60 and ~600 million page impressions per month) online communities for a total of 15 years. The level of stress induced by the users whenever something broke, was changed (even only slightly) or they just had a bad day was horrible and led to all kinds of fuzzy health problems (mainly panic attacks and hypertension). I was very attached to the product and always strived to make the users happy, and that played a big part in the problem.
Making slight changes to the interface oftentimes resulted in users insulting us like we had renovated their living room without permission. Can you imagine what it was like when a bug in Apache's mod_cache suddenly cached session cookies?
I always loved the job, but that made it so hard to draw a line and not letting it get to me.
Afterwards I switched employers and started working on a B2B platform in the banking sector. Of course, the enterprise has a different set of problems (in my case, no clue what the requirements really are), but your corporate users are just used to a different kind of standard (hint: way lower than your average Bootstrap frontend). They pay very good money, let you work on interesting things, technology-wise, and users are mostly easy to satisfy.