As a software developer, you may be called upon to perform some of these tasks
twitter.com
twitter.com
Medicine excepted of course but we all know how long that degree takes!
If industry wants this out of the gate then offer more paid internships and in those internships offer training, and offer graduates training.
… and covers your arse
If something is hard but looks like it should be easy to management, get one or two management trusted people in on it to agree that its hard, for example. This can be part of the communication.
>Communicate the status of your work-in-progress to your manager in a way that both reflects your uncertainty and is useful for your manager.
"Well, sir, let me put it this way: Can 9 women give birth to a child in one month? If so, then yes, you can have the feature next week!"