Where I work, a developer is expected to get their new feature deployed to the Dev environment and make sure that it and the platform are both still functioning at a very basic level. We had a period where quite a lot of new work checked in and deployed to Dev did not work at all, and got pushed straight back pretty much right away. I think that level of smoke testing from devs should be expected, as a handover period of the feature to QA.
The rest should ideally be covered by CI and any new, non covered functionality be picked up by the QA team, once the feature is in a testable state.
This means the Dev on the feature tests a few of the most basic functions of that feature once deployed to Dev to ensure its ready for the QA team to pick up, the Dev should absolutely not be spending much more than about twenty minutes doing this sanity check for most work: once it's deemed the feature is running then QA can pick up from there.