In this article
— Nowadays, engineers should embrace new technologies faster than ever before. The world is changing quickly, and in 2023, clients are looking at new tools and technologies such as AI/ML, ChatGPT, low-code/no-code platforms, IoT (Internet of Things), Cloud Native, blockchain, cryptocurrency, metaverse, and others. That is why the ability to adapt quickly is one of the most important things each engineer should develop.
— In my experience, original documentation is the best starting point for learning a new framework, library, tool, etc. In addition, you may use specific educational platforms and tools that can help you to boost your mastery. At the very beginning, practice, articles, videos, and community chats are your best friends.
Platforms and websites
- FreeCodeCamp is a learning portal inspired by the idea of helping people learn to code for free.
- Refactoring guru contains everything you need to know about refactoring, design patterns, SOLID principles, and other smart programming topics.
- Fireship is a fast and amusing way to level up your programming skills.
- LeetCode provides coding challenges for developers to improve their coding skills and prepare for technical interviews.
- CodeWars helps learn, train, and improve your coding skills by solving programming tasks of many types and difficulty levels in a gamified way.
- ByteByteGo covers topics and trends in large-scale system design, from the authors of the System Design Interview book series.
- Going Headless helps to explore the world of headless architecture and MACH technology.
— Begin with simple things you already use in practice and want to understand more deeply. I would suggest combining technical books with books about self-development, motivation, and processes.
- Mythical Man-Month, by Frederick P. Brooks
- Series of books, by Robert C. Martin (Uncle Bob);
- You Don't Know JS series: Up and Going, Types & Grammar, Scope and Closures, this & Object Prototypes, Async & Performance, ES6 & Beyond, by Kyle Simpson;
- Effective TypeScript, by Dan Vanderkam;
- Dive Into DESIGN PATTERNS, by Alexander Shvets;
- Node.js Design Patterns, by Mario Casciaro
- Fundamentals of Software Architecture, by Mark Richards;
- Building Microservices, and Monolith to Microservices, by Sam Newman;
- Designing Data-Intensive Applications, by Martin Kleppmann;
- Fundamentals of Data Engineering, by Joe Reis;
- Full Stack Serverless, by Nader Dabit;
- The Singularity Is Near: When Humans Transcend Biology, by Ray Kurzweil.
— Remember, learning to code and boosting your engineering expertise is a process that requires time and practice. Start with the basics, build small projects, and continue to learn and grow your skills over time.