I will throw my two cents in. It really depends on what you value most. As a software engineer, you'll find opportunities in both countries, no doubt. Salaries might be a tad higher in some Canadian cities (think Toronto, Vancouver) compared to, say, London, but cost of living plays a HUGE role. London is crazy expensive. Other UK cities like Manchester or Edinburgh could be more reasonable, but then the salary might not be as competitive as in Canada's big hubs.
Canada's got the vast wilderness and maybe a slightly more laid-back vibe (though that's a generalization). Winters are BRUTAL in many parts of Canada, though. The UK has milder weather overall (lots of rain, mind you), and you're closer to mainland Europe for travel. Healthcare is a big one to consider – both have universal healthcare, but the NHS in the UK is under a lot of strain currently, and wait times can be long. Canada isn't perfect either, but it might be a bit better on that front. Honestly, do some deep dives into specific cities in each country and compare the cost of living, job market for your specific skills, and the lifestyle. Good luck with your decision!