Skip to main content

Learn Software Engineering

overview

Coffee > Code

the work, teaches you how to do the work

Stop Studying, Start Coding

don't skip to cool complex projects, gotta start with the boring stuff

Dev Roadmaps

https://roadmap.sh/

5 layers

tech stacks

reference-docs

https://codeburst.io/5-examples-of-what-great-documentation-looks-like-for-developers-162bdec11020

Docs as code is a software development philosophy that views technical documentation as a form of code. It suggests that you should treat documentation with the same rigor and process as software code.

  • Documentation is an essential part of the software development cycle. It explains how to use the software and can include user guides, API references, install instructions, and release notes.
  • Please remember to expect unexpected errors because software is constantly updating...

As we pass this along from each new team member to next one, you need to add any missing steps, insights on tricky parts, and include screenshots for every last click you make! This will expedite and de-frustrate the next new person that joins our company!

Markdown

hads -o

Markdown Basics

Markdown Lint

.markdown.json or vs code settings.json

{
"MD033": {
"allowed_elements": [
"br",
"picture",
"img"
]
}
}

dev pain

Play the long game, so few people commit to mastery

principles for good coders

img

Going from Junior Dev to Senior most of your time goes into identifying what needs to be built and how to build it. You have to research what the problem looks like. You talk to others and get everyone to agree on what needs to be done.

These are your new tools:

  • Research the problem
  • Design the solution
  • Build consensus

As you get more experienced your problems become more ambiguous. The path looks hazy. There are multiple routes you could take, but each one hides its own dragons. It's not about coding anymore. Most of your work goes into research, and you can't google the answer. With ambiguous problems there is no single right answer anymore.

  • Consider how much risk any new project might add to the system
  • It's okay to fail. If you never fail then you're not stretching yourself
  • Get feedback early!

In-demand tech skills change fast

1. Invest in Core Skills

  • Foundational Knowledge: Focus on mastering algorithms and data structures. These skills enhance problem-solving abilities and are applicable across different frameworks and languages.
  • Understanding CSS and JavaScript: As a front-end developer, a deep understanding of these foundational technologies is essential.

2. Embrace Distributed Systems

  • Scalability Awareness: Understand how front-end applications interact with back-end services. Familiarity with concepts of distributed systems can help in designing scalable applications.
  • Real-World Experience: Engage in projects that require you to handle multiple services, APIs, and data synchronization.

3. Learn Design Patterns

  • Code Maintainability: Familiarize yourself with design patterns relevant to front-end development (e.g., MVC, MVVM) to write cleaner and more maintainable code.
  • Adapt to Different Paradigms: While design patterns may differ between functional and object-oriented programming, understanding their application in the context of frameworks like React or Angular is crucial.

4. Focus on Timeless Technologies

  • Avoid Fads: Be cautious of jumping onto every new front-end framework. Invest your time in technologies and practices that have shown longevity and adaptability.
  • Language Agnosticism: Concentrate on skills that are not strictly tied to one framework, such as responsive design, accessibility, and performance optimization.

5. Long-Term Perspective

  • Career Longevity: Think of your skills as investments. Prioritize learning that will pay off over time rather than seeking short-term gains from quickly learning trending technologies.
  • Continuous Learning: Stay updated with industry trends but ensure that your core knowledge remains solid and adaptable.

6. Community Engagement

  • Collaborate and Share Knowledge: Engage with other developers to discuss best practices and share insights. This can help you refine your skills and stay informed about the industry.

Conclusion

Front-end developers should aim for a balanced portfolio of skills, focusing on foundational knowledge, scalability, design patterns, and timeless technologies. This strategic approach will help ensure a successful and sustainable career in a rapidly changing field.

Video Tutorials

Free Certifications

Free Certifications

Youtube Channels

  • CodeWithHarry
  • Anuj Bhaiya
  • Apni Kaksha
  • Jenny's lectures CS/IT NET&IRF
  • Gate Smashers
  • Bhagwan Singh Vishwakarma
  • Telusko
  • MySirG.com
  • Programming with Mosh
  • freeCodeCamp.org
  • Traversy Media
  • ProgrammingKnowledge
  • Derek Banas
  • Clever Programmer
  • thenewboston
  • LearnCode.academy
  • mycodeschool

CODING PRACTICE

Boot Camps

https://cloudaffle.com/ https://tutcourse.com/home-v20/ https://www.codingdojo.com/ https://flatironschool.com/

video learning

https://learn.microsoft.com/en-us/shows/

Technology Certifications

Google certified marketer

Blogs

Cheatsheet

Freelance Web Developer Roadmap