This is the open-sourced curriculum for ladderly.io!
View this information as a slideshow here!
Proudly built using reveal.js.
reveal.js is an open source HTML presentation framework. It enables anyone with a web browser to create fully featured and beautiful presentations for free.
License: MIT licensed
- Introduction: Understanding the Master Plan
- Basic Technical Skills
- HTML
- CSS
- JavaScript
- React
- Optional Advanced Tech Skills
- Tech Employer Advice
- Tech Content Creator / Influencer Advice
- Tech Humor
- Miscellaneous Non-Curriculum Content
- Understanding Community Resources
- Why Tech + Programming?
- Why React?
- Why a Coaching Program?
- How to Identify a High-Prestige Bootcamp
- Overview of the Front-End Path
- Overview of the Job Search
- Overview of Post-Hire Care and Development
- External Resources
- Interview Prep Stack
- The Trial by Fire
Source: "Welcome to Ladderly! Overview of Community"
- Follow John on Twitter here. Directly message him any time!
- Join the Ladderly Discord. You will be automatically invited when you sign up for Ladderly.
- If there was an issue, just send John a message through Twitter.
- Ask questions in the comments of videos or even make your own videos on TikTok using #DevCrew and #CodeTok
- The entire Ladderly curriculum is open source and you can view it here on GitHub.
- You could even contribute if you feel something should be added!
- Watch weekly live streams on John's YouTube channel where you can ask anything!
Source: Clément Mihailescu, "15 Reasons To Become A Software Engineer"
- High Compensation
- Work-Life Balance
- Low Barrier to Entry
- Low Unemployment Rate and Easy to Switch Jobs.
- Predictable Interview Process
- Low Expected Future Unemployment Rate. It's a Futureproof Career.
- Lots of Variety
- Friendly to Both Introverts and Extroverts
- Can Work Remotely
- Promotes Creativity
- Technology is Included in Every Industry
- Programming Now Supports Many Career Choices Later
- Immediate Feedback
- Incredible Amount of Custom Tools
- Can Help You Do Almost Anything. At Work or in your Personal Life.
- You can leverage a degree from any field.
- Other Tech Jobs Besides Developer
- Also, Tester, Designer, Scrum Master, Business Analyst, and many more!
- Programming Supports a Digital Nomad Lifestyle
- React and JavaScript are Full-Stack Technologies.
- Python is a server-side language. This supports comparatively fewer use cases.
- The mental model for web development is already familiar to most people.
- AI and ML use cases for Python are not beginner-friendly.
- AI and ML may be dangerous when used by developers that don't understand statistics.
- Why Learn React instead of Angular?
- Learning React helps you quickly land a great job
- Learning React helps you grow
- React can be written using JavaScript or TypeScript
- JavaScript and TypeScript are multi-paradigm
- React, JS, and TS are cross-platform, full-stack technologies with many use cases
- TypeScript as a language is highly loved and wanted by developers
- Most people don't intend to work in data science
- Python is associated with a data science niche
- React has more results in a refined job search that excludes data engineering roles
- AI, ML, server-side, and non-graphical programs are not intuitive for most people
- Websites and mobile apps involve a familar mental model
-
More beginner friendly than C++
- Python and JavaScript considered beginner friendly. C++ and many other langs are not.
- With JavaScript, we don't have to manually manage memory
- React can be gradually learned, implemented, and adopted
-
More beginner friendly than C++
- A career focusing on C++ is associated with poor work-life balance and low maximum salary.
- React has higher starting salary compared to C++
- JavaScript is more popular, loved, and wanted among developers compared to C++
- You get maximum ROI if you can effectively and rapidly self-teach.
- Try self-teaching by taking the free Codecademy Learn HTML course.
- Given the results of this test, other options might be recommended.
- Prefer self-teaching by default.
- If you didn't enjoy the self-teaching experiment earlier described, consider another option.
- If you don't have a job after 12 months, this is a sign that you should consider other options.
- If you don't want to invest up to 12 months in self-teaching, other options might get you job ready sooner.
- You find a prestigious bootcamp that has acceptable terms.
- Check the price, payment options, refund policy, technologies taught, and course schedule.
- You qualify for admission.
- Note that quality bootcamp prep is also available, here for example.
- You already have a career and you are seeking to level-up.
- You need help getting references or referrals.
- You want social learning, but you don't want a bootcamp.
- For example, learning at a bootcamps might lack personalization, be too fast, too slow, or have unacceptable terms.
- You are already in a bootcamp or college program, but you want additional help.
- If other options don't work, consider this as a fallback plan.
- If you are able to complete college at a reasonable price and within a reasonable period of time.
- Many employers will subsidize or entirely pay for college. Consider Guild Education partners.
- Certain individuals may qualify for unique scholarships.
- Don't forget to include opportunity cost in your college price analysis!
- If a slower pace of learning is ideal for you
- Specifically, you want longer than 1 year to learn to code.
- You already have a career, but a degree could help you advance
- Undergraduate and graduate degrees may help you advance into management
- Earning a degree may appear positive on your corporate performance review
- You're able to leverage your mentor's social network.
- How to Identify a Quality Coach
- Bulk discount on hours
- Offers a job guarantee
- Are they where you want to be?
- Are they asking you to do something they have never done?
- How do mentors add value?
- Enhanced social network
- Give referals and references
- Help practice interviews
- Help you learn better by accelerating and decelerating pace of learning, tailored to you
- Can help you find and learn the latest tech, instead of learning a fixed curriculum optimized for a prior point in time.
Source: John Vandivier, "Hirability and Educational Prestige"
- Use coursereport.com
- Look for a bootcamp with a rating of 4.25 or greater and 400 or more reviews.
- Currently, in the United States, App Academy and General Assembly are two recommended bootcamps.
- Le Wagon is an ideal bootcamp for many people outside of the United States.
- More things to consider when picking a bootcamp
- What is the placement rate and is a job guarantee offered?
- What is the price and do flexible or deferred payment options exist?
- Does the bootcamp accept GI Bill benefits or other tuition assistance?
- Does the bootcamp offer the technology training that I am looking for? Does it offer React training?
- HTML
- CSS
- JavaScript
- React with Redux
- Overview of the Job Search
- Have a high-quality GitHub Portfolio and LinkedIn Profile
- Get skill certifications from LinkedIn and Indeed
- Enlist third-party recruiters like those working at TEKsystems
- Optimize your resume. Utilize Indeed Resume Services.
- Strategically apply and follow up with companies of interest.
- Social network even outside of the application process.
- Continue to learn and grow.
- Focus on growing soft skills, full stack development skill, and practing algorithm problems
- Try to work with other developers through open source, hackathons, and similar opportunities.
- All post-hire care and development services are totally optional.
- Sessions to accelerate onboarding, fill in gaps, and combat imposter syndrome at your new role.
- Sessions to accelerate career movement from the tier 3 junior level to the tier 1 senior level.
- Sessions to accelerate development of new skills including full stack development, cloud architecture, new languages, etc.
- The Ladderly Curriculum. In Particular:
- Starboi, for Behavioral Interview Prep
- Endorsed Communities, for social help
- Algo Prep Chrome Extension - TODO
- Interview Prep Flashcard Tool - TODO
Source: The Trial by Fire
- Learn React Quickly
- Free Website Hosting
- Use GitHub Pages, Vercel, Railway, Render.com, Heroku, or Netlify
- Supabase and ElephantSQL are great for free database support
- GitHub Pages allows free portfolio hosting
- Mimo is a smart phone app that helps you learn to code!
- Brainscape flash cards are great for skill assessment and interview prep.
- I specifically recommend getting to 75% or higher on free tier JavaScript and React flash cards.
Interview Prep, Data Structures and Algorithms (DS&A)
Leetcode is the go-to DS&A prep tool. Tips on how to use it:
- Start with the Ladderly Two Week Leetcode Crash Course
- Next complete the Blind 75 and read the 14 Patterns Article
- After steps 1 and 2 you are ready to start interviewing.
- Leetcode tracks question frequency for some companies.
- If you are interviewing at such a company, try to complete tracked questions with frequency >= 66%
- Optional: Complete all questions within Sean Prashad's Leetcode Patterns Tool
- Optional: Sort Leetcode questions by frequency and complete all with frequency >= 66%
Interview Prep, Other
- Additional DS&A Prep: AlgoExpert
- Mock Interviews including Behavioral: interviewing.io
- System Design Prep: SystemsExpert
- Front-End Interview Prep: frontend.eval
- Optional: The Antipatterns section describes some other tools and reasons they are not recommended.
Career Advice and Offer Research
- Basic Bash
- Basic Git
- Googling Techniques
- General Learning Techniques
Source: Fireship, "How to 'Google It' like a Senior Software Engineer"
- If you run into a code error or log message, try literally searching the message.
- Refine search using double-quotes for an exact match.
- Increase useful results by removing application-specific content in your search
- Use the "site:" prefix to search for results within a single site, eg
site:stackoverflow.com
- Use the minus sign to exclude web pages that include a keyword
- Refine by searching over a specific time period
- You can use the "filetype:" prefix to search for specific file types
- If a search result isn't currently accessible, try to access a cached version
- Try using search engines other than Google as appropriate. For example, you could search within StackOverflow.
https://www.tiktok.com/@johnvandivier/video/6997626272486821126 https://www.tiktok.com/@johnvandivier/video/6998324447363058950 https://www.tiktok.com/@johnvandivier/video/6999304701133016326 https://www.tiktok.com/@johnvandivier/video/6999340031483579653 https://www.tiktok.com/@johnvandivier/video/6999426333134621958 https://www.tiktok.com/@johnvandivier/video/7000540063163632902
https://www.tiktok.com/@johnvandivier/video/7005277848781016326 https://www.tiktok.com/@johnvandivier/video/7006386444826709254 https://www.tiktok.com/@johnvandivier/video/7008166043436748038 https://www.tiktok.com/@johnvandivier/video/7009409512536952069 https://www.tiktok.com/@lorraine.leung/video/7005391554458291461 https://www.tiktok.com/@lorraine.leung/video/7008548471024209157 https://www.tiktok.com/@lorraine.leung/video/7004964962921762053
- TODO: discuss code comments
https://www.tiktok.com/@johnvandivier/video/6997096762561268997 https://www.tiktok.com/@johnvandivier/video/7002361910536490246 https://www.tiktok.com/@johnvandivier/video/7010777362136616197 https://www.tiktok.com/@johnvandivier/video/7010812263573605638 https://www.tiktok.com/@johnvandivier/video/7010862267147373829 https://www.tiktok.com/@johnvandivier/video/7010934946193820933 https://www.tiktok.com/@johnvandivier/video/7011205086252666118
https://www.tiktok.com/@johnvandivier/video/7009779405836930310 https://www.tiktok.com/@johnvandivier/video/7009825459181505797 https://www.tiktok.com/@johnvandivier/video/7010121177112907013
https://www.tiktok.com/@js_bits/video/7003363214767557893 https://www.tiktok.com/@js_bits/video/6967388258309328134 https://www.tiktok.com/@johnvandivier/video/6998634814953868550 https://www.tiktok.com/@johnvandivier/video/7003515307339959558 https://www.tiktok.com/@johnvandivier/video/7003764996966452485
- subtopics: vs code, extensions, node, prettier, eslint, redux, devtools, project file organization / component organization (page vs feature)
- TODO: pt 6-7: jsx, functional component, blitzjs
https://www.tiktok.com/@johnvandivier/video/6993419750839815429 https://www.tiktok.com/@johnvandivier/video/6995237983574117638 https://www.tiktok.com/@johnvandivier/video/6997136067631582470 https://www.tiktok.com/@johnvandivier/video/6997168179432754437 https://www.tiktok.com/@johnvandivier/video/6997199457062243589 https://www.tiktok.com/@johnvandivier/video/6997242458039995654 https://www.tiktok.com/@johnvandivier/video/6998130073127619846 https://www.tiktok.com/@johnvandivier/video/6998966355840077061 https://www.tiktok.com/@johnvandivier/video/7003475826381507846 https://www.tiktok.com/@johnvandivier/video/7005001337335287046 https://www.tiktok.com/@johnvandivier/video/7007858409085127941 https://www.tiktok.com/@johnvandivier/video/7010040889909234949 https://www.tiktok.com/@johnvandivier/video/7011300261297687814
https://www.tiktok.com/@js_bits/video/6986616534466579718 https://www.tiktok.com/@johnvandivier/video/6994933767014059270 https://www.tiktok.com/@johnvandivier/video/6998198819456322822 https://www.tiktok.com/@johnvandivier/video/7004059694675283205 https://www.tiktok.com/@johnvandivier/video/7006311038958177541 https://www.tiktok.com/@johnvandivier/video/7007988725498006790 https://www.tiktok.com/@johnvandivier/video/7009409512536952069
https://www.tiktok.com/@johnvandivier/video/6996679894751071494 https://www.tiktok.com/@johnvandivier/video/6997466458632703238 https://www.tiktok.com/@johnvandivier/video/6999394721961381126 https://www.tiktok.com/@johnvandivier/video/6999606496224906501 https://www.tiktok.com/@johnvandivier/video/7000159465802599685 https://www.tiktok.com/@johnvandivier/video/7008933997413666053
- Interview Prep Stack
- ATS Scanning Tool
- Make sure resume can find skill keywords and years of experience.
- Job Search Tracker Template
- Job Search Networking Scripts
- TODO: key subtopics: resume + application, social networking, portfolio development
Open Source Contributions
- Discord Driven Open Source Contributions
- Open Sauced Contribution Finder
- Hot Open Sauced Contribution Finder
https://www.tiktok.com/@johnvandivier/video/6997415919513373958 https://www.tiktok.com/@johnvandivier/video/6990755604436389126 https://www.tiktok.com/@johnvandivier/video/6992408142512409862 https://www.tiktok.com/@johnvandivier/video/6992428753142025477 https://www.tiktok.com/@johnvandivier/video/6992973274447645957 https://www.tiktok.com/@johnvandivier/video/6993006398955195653 https://www.youtube.com/watch?v=U6tu1F2x4J4 https://www.tiktok.com/@johnvandivier/video/6993036405559561477 https://www.tiktok.com/@johnvandivier/video/6993062728927694085 https://www.tiktok.com/@johnvandivier/video/6993363739185564933 https://www.tiktok.com/@johnvandivier/video/6993419750839815429 https://www.tiktok.com/@johnvandivier/video/6994933767014059270 https://www.tiktok.com/@johnvandivier/video/6995207949262081285 https://www.tiktok.com/@johnvandivier/video/6995738580060622085 https://www.tiktok.com/@johnvandivier/video/6996412445812182277 https://www.tiktok.com/@johnvandivier/video/6996766371598060806 https://www.tiktok.com/@johnvandivier/video/6997039516741668101 https://www.tiktok.com/@johnvandivier/video/6997497115609943301 https://www.tiktok.com/@johnvandivier/video/6998255182932987142 https://www.tiktok.com/@johnvandivier/video/6998359736320118021 https://www.tiktok.com/@johnvandivier/video/6999394721961381126 https://www.tiktok.com/@johnvandivier/video/7000076836256468229 https://www.tiktok.com/@johnvandivier/video/7000159465802599685 https://www.tiktok.com/@johnvandivier/video/7000716613842439429 https://www.tiktok.com/@johnvandivier/video/7001138265868799238 https://www.tiktok.com/@johnvandivier/video/7001657791559585029 https://www.tiktok.com/@johnvandivier/video/7002437950491479302 https://www.tiktok.com/@johnvandivier/video/7003318580192251141 https://www.tiktok.com/@johnvandivier/video/7004125849528143109 https://www.tiktok.com/@johnvandivier/video/7005277848781016326 https://www.tiktok.com/@johnvandivier/video/7005298322969857286 https://www.tiktok.com/@johnvandivier/video/7005324625936698630 https://www.tiktok.com/@johnvandivier/video/7006113111002320133 https://www.tiktok.com/@johnvandivier/video/7006386444826709254 https://www.tiktok.com/@johnvandivier/video/7006879246534692101 https://www.tiktok.com/@johnvandivier/video/7007424530385865989 https://www.tiktok.com/@johnvandivier/video/7008524621238570246 https://www.tiktok.com/@johnvandivier/video/7008749086878813446 https://www.tiktok.com/@johnvandivier/video/7008976841176403205 https://www.tiktok.com/@johnvandivier/video/7009058494741581061 https://www.tiktok.com/@johnvandivier/video/7010156420934995205 https://www.tiktok.com/@johnvandivier/video/7010192983815408901 https://interviewing.io/ http://algoexpert.io/ https://leetcode.com/
https://www.tiktok.com/@johnvandivier/video/6997010529281707270 https://www.tiktok.com/@johnvandivier/video/6993823688193772806 https://www.tiktok.com/@johnvandivier/video/6994419256439885061 https://www.tiktok.com/@johnvandivier/video/6994513773650332934 https://www.tiktok.com/@johnvandivier/video/6995369387163208965 https://www.tiktok.com/@johnvandivier/video/6996352698777947398 https://www.tiktok.com/@johnvandivier/video/6998930619405176070 https://www.tiktok.com/@johnvandivier/video/7000375990794882309 https://www.tiktok.com/@johnvandivier/video/7000453974017035526 https://www.tiktok.com/@johnvandivier/video/7000716613842439429 https://www.tiktok.com/@johnvandivier/video/7001836665018862853 https://www.tiktok.com/@johnvandivier/video/7002660542338944262 https://www.tiktok.com/@johnvandivier/video/7003385408973229318 https://www.tiktok.com/@johnvandivier/video/7007195633656352006 https://www.tiktok.com/@johnvandivier/video/7008565561361714438 https://www.tiktok.com/@johnvandivier/video/7008606676857130246 https://www.tiktok.com/@johnvandivier/video/7009302985792670982 https://www.tiktok.com/@johnvandivier/video/7010483925030014213
https://www.tiktok.com/@johnvandivier/video/6989746683118750981 https://www.tiktok.com/@johnvandivier/video/6991130957856263430 https://www.tiktok.com/@johnvandivier/video/6992322274841873670 https://www.tiktok.com/@johnvandivier/video/6993482499225701638 https://www.tiktok.com/@johnvandivier/video/6994186163510611205 https://www.tiktok.com/@js_bits/video/6976291781981900037 https://www.tiktok.com/@johnvandivier/video/6994860231750733061 https://www.tiktok.com/@johnvandivier/video/6998298277120642309 https://www.tiktok.com/@johnvandivier/video/6998594718435134726 https://www.tiktok.com/@johnvandivier/video/7001872420160163077 https://www.tiktok.com/@johnvandivier/video/7004526184595721477 https://www.tiktok.com/@johnvandivier/video/7005218573329173765
https://www.tiktok.com/@johnvandivier/video/6991859045590191366 https://www.tiktok.com/@johnvandivier/video/6992354225686613254 https://www.tiktok.com/@johnvandivier/video/7001695777407913222 https://www.tiktok.com/@johnvandivier/video/7002572293620714757
https://www.tiktok.com/@johnvandivier/video/6992603088502803718
outlining the job search:
- have a portfolio (should be done by the time you get to job search)
- make sure your resume looks good
- make sure you are on social media, and your socials look presentable (particularly LinkedIn)
- blast resume - (to who? to what job titles&descriptions? where? how many in a blast...indeed+linkedIn+https://www.theladders.com/ for job search; there are also a variety of programming-specific platforms like Vettery)
- follow up with corporate recruiters at target companies; that is, SOCIAL NETWORK
- attending meetups, conferences, and participating on social media (Twitter Spaces, tiktok, of course commenting on people's linkedIn conversations w/e)
- interview technique - coding, algorithm, behavioral, system design
The value of these activities is expected to be negative net of opportunity cost, in particular when placed as a required step prior to landing the first software development role.
- Fullstack.Cafe for job prep is expensive and trivia-focused. Likely to be unhelpful net of opportunity cost for interview prep.
- Interview Cake for DS&A adds no value compared to Leetcode + AlgoExpert. AlgoExpert's high-quality video makes it preferred over Interview Cake.
- Prioritizing generators, redux-saga, css-grid, or frameworks other than React or Angular.
TODO
- Behavioral Interview prep
- clean up readme
- record all lessons and publish non-free course (or release standard course as free)
- We know about social networking, but what about recommended meetups and conferences?
- more resources: logrocket podcast, jason lengstorf