Developers: You need someone to expose the Microsoft.SharePoint namespace and this is where .Net developers come from. You give them the requirements and they customize your Web Part to perform the appropriate functionality.
Web Page Designers / Authors: These guys would be responsible for setting up SharePoint sites via Front Page 2003 and after developers have created their Web Parts, Web Page Designers or Authors would drag and drop required Web Part components onto the SharePoint Site.
End Users: Could be anyone looking forward to getting information or using a Web Part for a particular purpose like reading reports. The end user can further customize his Web Part during run-time.