1. Learn Web design: Use Code Academy, Books, etc
2. Check out what a front-end developer and a back-end developer needs to know. There are many online lists of relevant 'tech stacks' for both positions.
3. Look into the various modules and features of the big websites, e.g. Facebook, and try to create/integrate the modules yourself, using any programming language you prefer, or in a language much preferred by the industry nowadays)
4. This will introduce you to a lots of skills. Lots of things go into making a large web app work: User authentication, Data storage, form building, API integration, Rest / Ajax calls, the HTML & CSS design...
5. You'll start looking more at the large web sites and you'll find yourself deconstructing how they're built.
6. You'll start solving the problem before you code it. Working through the code in your head and planning your implementation.
7. You'll also learn to have found a way to start a project:
- Who needs this product?
- Create use cases/user stories?
- Create workflow diagrams, drawing screens on paper
- List all the features and sections the app will have
- List all the code work each section needs, and the time each task/module will take
- Start coding
Pro tip: Give yourself an extra week always to any project schedule. This is your simple Plan B.
Pro tip: Start to track your project, any project- the time it is taking. You must be able to know where things are (what module have been completed) and so on
8. Stackoverflow.com is a good resource when you get into trouble. People have answered all sorts of soft development questions there.
9. Remember this: Anyone can become an average developer by writing code, solving issues by looking at stack overflow, or go to intermediate level with a programming language. But good developers keep practicing stuff all the time. Their practice ethic, their being aware to industry developments, knowing what works and what doesn't anymore (it comes from practice) is what sets them apart. For example, good developers will try to reverse-engineer important stuff (free frameworks, plugins and themes for Wordpress etc), or take a close look at their source code (if available).
10. Another way to become a good developer is to make highly usable web sites and apps, by focusing making things easy and simple for the user, hiding all the complex workings under the head. So, read up 'UX/UI best practices and examples' and put that into practice.
11. To become known, some focus on the big websites: Finding bugs and security loopholes/vulnerability in the top sites is good way to get attention. Others post their own analysis on how 'Big site/app X could be better'.
12. Do some important stuff and you are good to go.
13. Learn to focus: The metaphor of the elephant and the rider is useful here. The mind is like an elephant (the emotions) with a rider (the intellect) on top. The rider can see and plan ahead, but the elephant is far more powerful. Sometimes the rider and the elephant work together (the ideal in classroom settings), but if they conflict, the elephant usually wins. (Source: Jonathan Haidt)
In 8-12 months, you are good to go.
14. Start making stuff: Make simple, elegant websites- Use templates and frameworks (E.g. Bootstrap for the front end, Wordpress plugins and templates)
15. Build a simple web application.
16. Make 3-4 applications (Web app/mobile app) yourself first.
17. Pick a side (front-end/back-end) and a programming language and start specializing a bit. This helps in selling yourself. Of course, you can go ahead and learn other interesting languages and technologies.
18. Making money by working for others
Establish a web presence for yourself, with link to all the work you are doing. It is possible to have a private area on the server where you can try out your apps.
19. Create a GitHub (or Codepen) account and open source any reusable code, plugin, etc. you created. This also helps build your reputation.
20. Start making stuff for clients: Once you think you are good enough- start with your neighborhood businesses, canvass online/offline, Craigslist/Elance/Upwork etc only as last resort
21. Generally, to overcome lack of experience on your first job you lower your price. But as soon as you have one official project under your belt, your marketing should be that you make you customers successful. Don't drop prices anymore- you can raise them as you go ahead.
Also: Build your network (online/offline)
The own product/service startup route
There is a separate quick guide to this.
22. Basically, you must 'find a market' before you really 'have an idea'.
If you find out people willing to pay for such a service/product, create a working version (they call it a MVP- Minimum Viable product)
Making a successful web app: A successful web application has the following seven features:
1. The web app must be something what people want and/or need, and will use (easy to use) and love (look great and is very intuitive).
2. A marketing plan to attract users/customers (they call it 'traction') for whom you made the web app.
3. Good, durable build quality (coding, database, servers)
4. Fast and seamless service
5. Supporting features when needed: Payment processing, Notifications, etc.
6. Secure (the customer data must be always secured)
7. Backing of a dedicated team
23. Going into full time employment
The competition is tough in the web development field. Other than having lots of experience in relevant area, what can also boost your chances at the interview is knowledge for traditional computer programming concepts, i.e. 'theoretical' subjects like algorithms and data structures. Just Google for these topics. there is a lot of stuff on it all.
One assumes you have looked at the job description in detail, right?
Thank you for reading.
If you found this guide useful, please share this with your friends and family.
There are 200+ guides to succeeding in business, career and personal life in The Success Manual. Get the pdf ebook for $12 only.