Is software more mentally intensive than other fields of engineering?

Depends. Most people I know in civil or electrical work within a fairly well-defined area (for civil, someone might do structural or geotechnical or CAD only; for electrical, they might do hardware integration or program microcontrollers), whereas in software, it seems fairly common to have to "wear multiple hats" and do back-end and front-end and a database and implement some gimmick like blockchain or machine learning into a single piece of software, and have the programmer be somewhat familiar with all of it, which contributes a lot to the mental rigor of programming.

That said, that may be due to the amateurism of a lot of programmers on reddit; major companies have database administrators and people who do exclusively front-end or back-end development. While there are definitely plenty of full-stack people, and some familiarity with the entire stack is important towards being part of the team, stuff gets easier once you find a niche.

/r/cscareerquestions Thread