canada toronto software engineer salary