DEV Community

Discussion on: What’s the most under-appreciated software?

Collapse
 
piannaf profile image
Justin Mancinelli

Lots of people complain about cell signal coverage and quality. I used to too. Then I worked at Ericsson building software to help the people who engineer the cell towers to optimize their performance.

Wow, there is a lot that goes into cellular software to deal with the constraints of physics and the ever increasing expectations people have (and the increasing number of people/devices)!

Imagine you are talking to someone while driving (or on a train) and the signal needs to hand off from one tower to another at 65mph without dropping quality. Or you are trying to meet with someone near Shibuya Crossing with 2,500 other people and there are dozens of cellular antennas from all different carriers pointing in the same direction but the interference can't drop your call, or if it does, it needs to correct in less than a second so you can still hold a conversation.

My team had to deal with clusters of towers, each sending multiple terabytes of data every 15 minutes. We didn't deal with the software of the towers themselves but had software processing the data sent from them so engineers could then analyze if they should point the antenna in a slightly different direction, or change the gain of an antenna, or if neighboring antennas weren't handing off to each other properly.

The fact that we complain so much about it shows cellular software is very under-appreciated.

Collapse
 
anras573 profile image
Anders Bo Rasmussen

I always forget stuff like that whenever I have a bad reception 😅
Is there anywhere I can read more about this stuff? 😃

Collapse
 
piannaf profile image
Justin Mancinelli

Heh, and no one likes getting the bill. My job before Ericsson was working on rating and billing software that needs to handle different kinds of events, several hundred-thousands a second, that need to be processed in accordance with the subscriber's plan so each person will be billed correctly according to text/voice/data rates that may change depending on roaming, or if the destination is a family member, or a toll-free call, etc.

This video gives a very high level overview youtu.be/iMduQ96N1F8. All the training I had was internal, on the job, so I don't know what else to send. You are probably very good at searching, but if you didn't know to search for OSS or BSS, you might not get far. When I worked at Ericsson, we got raw logs from cell towers (which aggregate multiple antennas) and batched data from OSSs which aggregate multiple towers. Both had different data that was important to keep track of.

Collapse
 
patryktech profile image
Patryk

I worked for a company that did GSM network optimization for Telcel, in Mexico, and we offered services through Ericsson.

Definitely an extremely interesting business problem. Among other things, I was tasked with building a C# interface (which was essentially not much more than a web app wrapper) with a Google Earth plugin to show the network state on the map, locate traffic, with maps for interference, traffic, handovers, etc.

Was fun.

Collapse
 
piannaf profile image
Justin Mancinelli

Very cool. That reminds me I worked with teams in Croatia and Spain who were making similar mapping functionality for an internal web tool. It used the data my team processed. My favorite map to look at was the visualization of neighbor relations

(@anras573 you should take a look at what ANR is in that link, too. I had forgotten about it in my response to you. There are many more acronyms mentioned there you can look up and get a better understanding of this stuff)