I worked in a startup during the time when SMS servicers were the new hot. I was the only backend programmer, and back then there was no ecosystem of ready made solutions to pick and choose. So I created everything myself. From Scratch. And I mean everything: I made my own data structures like linked lists and hash tables, I even implemented my own memory recycling. Everything in pure, ANSI C. It was a ton of work, but the end result was lightning fast.
In addition to the logic of handling both SMS routing as well as computer clients via TCP and UDP, I integrated SQL database that served in production to store tens of millions of text messages. Again, this was time before Docker or other easy solutions. I played around with multiple options such as MySQL, but ended up using PostgreSQL. I even integrated a LDAP server for authentication purposes, even though I don’t think it ever got used in production.
Furthermore, I had to connect at the lowest level to the different teleoperator SMSC servers, that came with monstrous, 600 page technical manuals, and where making a mistake could have catastrophic consequences (a bug could literally end up sending any number of SMS messages). I also had to do stress and other types of test to make sure this whole backend was ready when a customer started a nation wide TV campaign to advertise it, at the other side of the continent so in emergency I would not have had access to their servers. Luckily, or I should not say luckily but due to my diligence, everything went smoothly.
During this time I also acted as a semi-official sysadmin, configuring not just Linux and FreeBSD boxes, but also industrial Unix servers (Solaris, HP-UX etc.) I even had a full rack of computers at one point sitting right behind my chair… I can still remember the noise.
Another example of a situation where I had to solve a business critical issue was when one of our services that was connected via the Internet to customer’s premises at the other side of the globe stopped working after an update. The customer was blaming us as they had not changed anything, but I was able to debug the problem by using TCP dump to extract the raw network traffic, and by comparing the old and new version detect a single bit change in the header that was due to some very obscure firewall update Unix systems. I was able to then write a step-by-step guide to the system admins of the customer on how to upgrade their server to be compatible.