Hacker News new | ask | show | jobs
by soulchild77 2857 days ago
> Try to work in a BTB product, not a BTC. BTB means way fewer customers, and fewer customers means fewer eyes looking for bugs

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.

4 comments

I do understand this point of view, now let me offer my grass-is-always-greener anecdote.

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.

I hear you! Our system is multitenant-capable as well, but we're lucky in that all three tenants are basically run by the same customer.

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 agree so much with your latest paragraph. I'm currently working on a software that helps telcos decide the placement and configuration of mobile network cells and antennas, and it's like you said: it's actually a very interesting and deep problem, the pay is good, and since the users are engineers, it doesn't matter that the UI is just average looking as long as it does what the application manual says. The application is huge but reasonably maintainable.

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.

Oh, wow.

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

Yes, we use GIS systems and detailed maps of terrain information and estimated traffic demand. I don't think I can tell you much more, sorry... I'd rather stay at the more conservative side when confidentiality clauses are present.

Also I'm on vacation and I won't see my boss for another week :).

Your work sounds interesting. I also live in Spain, what is the company name?
Ericsson. It's not like it's an unknown one :).
I don't agree with this. This type of stress and worry is usually due to poor engineering. Our goals should be to reduce this type of stress, how? By writing solid tests, preventing regressing tests, solid logging, monitoring, automating away all the little rubbish, building solid reliable systems. Seriously, how do airline engineers or the folks who write the software for your car braking system sleep? By building solid systems with fail-safe.
You missed my point. This is not about the quality of software development. It's about users bitching about everything publically (by posting to the platform's forum) because we changed something on a platform they basically use free of charge (if you can call it that, because it was financed by advertising). They act like they own everything - including me. In the real world this would probably be called antisocial behaviour, but on the Internet people renownedly lose all their good manners.

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.

Can you elaborate more about the stories about working on online communities?

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)?

Admittedly, I only concentrated on the bad stuff in my post.

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.