Basics
- First try to understand what is what? Like what is Programming Language, Scripting Languages, Database Languages etc.,
- Try to understand the differences between Desktop, Website, Mobile Application and Enterprise Application developments.
- Know the basics of a programming language or a tool or a software.
- Understand the Internals of the Language, like how the code is compiling internally, the architecture, the artifacts of the language etc.,
- Understand the basics of RDBMS and NoSQL databases as well
- Try to implement Test Driven Development (TDD) approach of development by writing unit test cases.
- Try to execute the code in different Operating System Platforms
Official Websites
- Always visit the official website of the Languages or Tools or Softwares and read their Official Documentation and their blogs.
- Try to understand what you can do with that particular Programming Language or Tool or Software.
- Check the Applications, Websites that was done using that particular Programming Language.
- Check the recommendations of the books and any other references mentioned in the official websites.
- Run the Sample Applications and try to understand the behaviour of the sample programs.
- Run the sample source codes which are available in GitHub public repos or other open source communities.
- You can refer some of the below given websites to see the industry & technology trends, programming languages trends, databases trends etc., as per the current industry trends
- https://www.weforum.org/
- https://www.tiobe.com/tiobe-index/
- http://pypl.github.io/PYPL.html
Technical Certifications
- Prepare and write the Official Certification Courses whichever relevant to your learning.
- Read the official guides of those certifications like MCTS, OCP etc.,
Subscriptions
- Subscribe to Popular Video Training Websites like Udemy, Pluralsight, LinkedIn Learning, Skillshare and many more
- Subscribe to Online Book Reading Websites like packtpub, oreilly, kindle unlimited etc
- Subscribe to Top Tech Bloggers who are proficients or Subject Matter Experts on their areas.
Debugging Skills & Tools
- Learn Debugging Skills
- Understand the features of the tools better and use them in your projects for better productivity
- Understand Build Tools like Gradle, Maven etc.,
Communities & Workshops
- You can join professional organizations and attend their workshops and seminars
- You can participate in helping Open Source Communities
- Participate in hackathons
- Attend Technical Workshops or Conferences or other professional talks like TEDx
Trainings
- Give Technical Trainings to the teams. By this way you learn what you didn’t learn as well.
Reading, Listening and Watching
- Read Technical Magazines
- Read Technical Journals, Whitepapers, Research Papers etc.,
- Read Online Tutorials, Videos or Blog articles of online training companies or trainers
- Read the Cheat Sheets
- Document the Lessons Learned
- Watch Subject Matter Experts YouTube Videos
Social Account
- Create Accounts with Stack Overflow, Quora, Facebook etc., to search and post your queries
Self Building
- Learn Best Practices of writing code
- Learn Coding Standards of the particular platform
- Learn to do code reviews
- Learn Code Versioning like Git and GitHub
Architecture
- Understand the Algorithms
- Try to write Algorithms on the identified problems or issues
- Develop Problem Solving Skills and Logical Thinking
- Understand UI Design Concepts
- Understand the strong foundations of UML, Object Oriented Design and Object Oriented Programming Concepts.
- Understand Software Development Life Cycle and its methodologies
- Understand XML and JSON
- Understand what is HTTP, HTTPS, TCP, FTP, API, REST Services, Web Services etc.,
- Understand the Architecture of Applications like 3 Tier, N-Tier, MVC, MVP, MVVM etc.,
- Understand 23 Gang of Four (GoF) patterns categorised into Creational, Structural and Behavioral
- Understand SOLID Design Principles like SRP, OCP, LSP, ISP and DIP
- Understand Saas, PaaS, IaaS
- Understand cloud services like AWS, GCP, Microsoft Azure, IBM Cloud, Alibaba Cloud, VMware etc.,
- Understand Security, Performance, Usability, Typography
- Understand Encryption and Cryptography
- Understand Automation Concepts
Projects/Case Studies
- Analyze and Visualize the Solution to the problem
- Visualize one concept and try to build that application or website.
- Try to implement real life projects on your own.
- You can develop your own Blog.
- Try to Build Reusable Components
Learn more about Technical concepts in our upcoming Blog articles.
Happy Learning!