I would say that even in case of classical computing, it is very helpful to understand both mathematical theory, e.g. Turing machines, complexity, Boolean functions etc. and egineering behind, e.g. construction of logical circuits. You do not need to deep dive very much, but basic understanding I consider necessary.
The same is true for quatum computing. To start with mathematical theory behind and basics of quantum physics could be the best way. Then I would investigate programming techniques, firstly assembly languages (e.g. QASM) and then switch to something higher level like Qiskit. Once you know basics, you can easily use already rich libraries for solving practical problems on quantum computers.
You mentioned that you have mathematical and physical background, so understanding basics should be easy for you. I would recommend classical book Quantum computing and Quantum Information by Nielsen and Chuang to start with. It covers both mathematical and physical side of the quantum computing.
After that, try to learn some high level quantum programming language. For example Qiskit is very well documented. You can create for educational purposes free account at IBM Q platform and study yourself with examples provided here. It is necessary to know Python language but I think you can find many online courses about that language.