There's good news and good news when it comes to becoming a SharePoint developer. The first good news is that SharePoint developers are among the highest sought and paid professionals in the workforce because of the technical complexities and functional capabilities, to solve business' needs, of the product. The second good news is that anyone can do it because it's not rocket science!
There are ten learning steps you need to take to become a well rounded SharePoint developer.
Step 1 - Physical Architecture
SharePoint is composed of services and relies on other services that can all run on one server or can be distributed across multiple servers. If you need to run SharePoint so you can develop then one server is fine. If you're talking about testing or production environments then you must distribute the services across servers. It's important to understand what all the services do which can help in your development down the road. The three basic core services are SharePoint, SQL, Web services and other SharePoint services.
SharePoint services contain the core services of the product which now also includes search. These services will run on every server within a farm. A farm can be as small as one server or as large as one hundred or even more. SharePoint services are installed by the SharePoint installation package which must be run on each server except for the one running SQL services.
SQL services are installed by the SQL Server installation package and make up the core services of that product. SQL Server is an enterprise database server and is what SharePoint uses to store its data. SQL Server typically runs on it's own server(s) and within larger farms are usually clustered for fail-over purposes.
Web services comes with Windows Servers in the form of the Internet Information Server (IIS) product and will typically run all non-SQL servers. IIS provides the web services used by SharePoint to render the web pages to user's browsers. In a typical SharePoint farm non-SQL servers will be wither web servers or application servers. Web servers will host the actual SharePoint sites while the application servers will host a variety of other services.
Other SharePoint services which are typically run from the application servers include:
Managed Terms Store
PowerPoint Automation Services
Step 2 - Logical Architecture
SharePoint has an internal logical architecture.
Step 3 - .NET, C# or VB.NET
Step 5 - Server Object Model
Step 6 - Web Parts
Step 7 - Workflows
Step 8 - Public Web Sites
Step 9 - Client Object Model
Step 10 - Apps