πŸ‡ΊπŸ‡Έ Ed Grosvenor πŸ‡¨πŸ‡­

@ed Follows you

American PHP developer living in Basel, Switzerland. I run a global team of developers building the technology that powers EXACT Sports in Chicago.

Basel, CH Director of Application Development @ EXACT Sports https://gros.co
πŸ‡ΊπŸ‡Έ Ed Grosvenor πŸ‡¨πŸ‡­ @ed · 1yr

There are parts of my code that always feel fragile no matter how thoroughly I've tested them. The business operation the app supports is so complex with so many moving parts that I never really feel like I have it nailed down.

Right now I'm working on a part of the app that automates the hiring of athletic trainers to protect the health and safety of youth athletes that attend our soccer camps. On the surface, it's a pretty easy thing to do. Identify qualified athletic trainers who live within x miles of an event and send them invitations. Select from trainers that say they're available, get one confirmed to work the camp, and get them the instructions and materials they need.

Where it gets complicated is that sometimes we're running two camps at the same facility at the same time. And in those cases, we really only need one athletic trainer to cover both camps. So I need to pair camps up for the purpose of athletic trainer cover. But then sometimes registrations for one of the camps will exceed expectations and we'll have to move it to a larger facility meaning that we do need two athletic trainers. Occasionally a change of facility will mean a longer drive for a trainer so they'll back out or need a hotel room. I could write up six more paragraphs on the various scenarios that are likely enough to require me to account for them in my code. My job is to keep as many problems from hitting the operations team as I can by automating the decision making around each situation.

This feature represents less than 1% of what this app does for us and it's one of about a dozen apps we maintain, with more on the way. I've not always been great at writing tests or documentation, but the further I get from my "all-nighters are good for the soul" youth, the harder I'm working to fix that problem. And even when I've written every test I can think of and documented everything I can spill out of my brain, it never feels like it's quite enough. Eventually a Slack notification will come in to prove me right.

0
0
0