I don't hate software, but my job has made me realize that I'm really just a mediocre programmer with really good domain knowledge
You seem like a prime candidate for promotion to management or a more analytical role. Is this a possibility or something you can work toward?