My skill is fairly limited in SQL and I was wondering would it make more sense to deep dive into SQL or learn another programming language to improve myself as an engineer?
SQL doesn't sit in a category that's similar to "other" languages. You often need to know how to construct SQL queries in addition to working in another language.<p>Honestly, learning a language to "improve" yourself is probably a waste of time. Learning a <i>kind</i> of language is more valuable. Not SQL, but declarative. Not Haskell but functional. Not Java but object oriented.<p>Additionally, it'll be more useful to understand programming concepts, like SOLID, flow control, data structures, etc.<p>As a developer for ~15 years, I don't generally fear projects using languages I'm not familiar with anymore. I know I'll pick up the basics to start contributing, and I'll grow into mastery over the ensuing months.<p>Which brings me to my real advice; learn how to be productive while learning. If you can do that, you'll have a long and successful career as a developer.
Just learn both. SQL is not that big unless you want to go full analyst / dba. Spend some time on it and treat it more like regex - you can look things up if you need it. The this or that choice as you explain it doesn't feel right.