I haven’t done this recently enough to guide you on the details, but step zero is to decide whether you are certain you want to dual boot or not. It adds a lot of complexity and brittleness that is best avoided if at all possible.
- Try to find Linux compatible replacements for the software you need.
- if that doesn’t exist, see if you can run it on Linux with wine.
- If that isn’t possible, consider running windows inside a virtual machine on Linux.
- If you do want honest, bare-metal windows then using two different physical drives will be easier and more reliable. Ideally your laptop has room for two drives, otherwise you can dangle a USB SSD (not a flash drive). Windows won’t install to a USB drive but Linux doesn’t care.
Your best option by far is to overwrite windows completely. For most software development Linux is way better anyway.