Don’t get anything with less than 16GB of RAM. Software development needs piles of RAM. Just open up a VM and watch you RAM disappear. My current laptops are all 32GB and my next one will be 64GB.
Look at gaming laptops. Gaming laptops support large RAM configurations. You can put a 1TB SSD in them. They have good 3D hardware if you need to use a tool to make 3D objects. Plus they can run games! Downside, they are heavier.
I use Linux from a VM (virtualware) under Windows. I used to directly run Linux but I got tired of random companies releasing Windows only apps that I needed to run. I also got tired of having my video drivers break. Linux on VM under Windows is stable, Windows in a VM on Linux is not. That observation has nothing to with Linux, it is based graphics drivers getting all of their support on Windows.
Bash on Windows does not work for anything but casual use.