Curated Directory of Software Engineering Resources
After searching the internet high & low, here's my list of curated software engineering resources.
This is by no means exhaustive. If you have any suggestions/improvements, simply create a pull request and follow the same structure.
Sponsored by:
The Developer API Marketplace - List and earn from your API when developers use it.
Contents
- Education
- MOOCs & Online Courses
- Programming Platforms
- Fellowships
- Programming Events
- Hackathons
- Technical Interviews
- Products, Opportunities & Discounts
Education
Web Development
- FreeCodeCamp - Coding tutorials and challenges.
- Thimble - Free online code editor, web server, web browser & developer tools.
- NodeSchool - Open source workshops that teach web software skills.
- The Odin Project - A full free open source coding curriculum.
- Egghead - Video tutorials on popular JavaScript frameworks.
- Codecademy - Free and premium interactive tutorials for various languages.
- CodeSchool - Combination of video and interactive tutorials.
- MDN web docs - Web development articles by Mozilla.
- W3Schools - Tutorials on HTML, CSS, JavaScript and more.
- Eloquent JavaScript - An online book about JavaScript.
- Coder-Coder - Tutorials on Web Development from basics including HTML, CSS, JavaScript and more.
- CodeCraft - Provide Web Developement Courses on Javascript, AngularJS, Angular 5 for free.
Mobile Development
- Udacity Android Nanodegree - Students can also apply for scholarship given by Google.
- Android Developer Training - Range of courses to help you build Android apps.
- Vogella - Tutorials about Android development.
- Android Hive - Android tutorials blog.
- iOS development - Build your first iOS app with an Udacity course.
DevOps
- DevOps Bootcamp - Course dedicated to teach core software development and systems operation skills.
- Google IT Support Course - Google course to prepare you for a job in IT support.
Data Science
- Kaggle - Data science competitive platform.
- DataQuest - Learn data science with your browser.
- DataCamp - Learn data science online.
- DrivenData - Partecipate in data science competitions and help organizations.
- Analytics Vidhya - Training and Q&A platform based around data science.
- fast.ai - Deep Learning with only prerequisite being general coding skills.
- TunedIT - Data Mining competitions.
- Data Science Central - the online resource for big data practitioners.
- KPMG Data Science Virtual Internship - learn data science from a Big 4 accounting firm and how it's used in industry.
Artificial Intelligence
- Siraj Raval - Youtube channel with tutorials about AI.
- Sentdex - Youtube channel with programming tutorials.
- Two Minute Papers - Learn AI with 5 mins videos.
- Andrej Karpathy - Old blog about AI, now posting on Medium.
- iamtrask - Machine Learning blog.
- colah's blog - Blog about neural networks.
Computer Science
- BaseCS - Explains computer science basics in easy-to-digest articles. Also in podcast format.
- Tutorials Point - tutorials for technologies like web, mobile and many more.
- Introduction to Computer Science - CS101 - introduction to computer science in python language.
Open Source
- Up For Grabs - Start exploring open source projects and get involved in them.
- 24 Pull Requests - Yearly initiative to encourage developers to send 24 pull requests during December.
- HacktoberFest - Similar to 24PullRequests, gives swag for 4 accepted pull requests.
- OpenHatch - Non-profit providing tools for new open source contributors.
- First Timers Only - Beginners-friendly open source projects.
- Your First PR - Helps you make a contribution by showcasing great starter issues on Github.
- Awesome For Beginners - A list of awesome beginners-friendly projects.
- CodeTriage - Pick your favorite projects to recieve a different issue in your inbox every day.
- Open Source Friday - Helps you find a project to contribute to.
Security
- HackTheBox - Online penetration testing labs.
- McGrathNicol Technology Virtual Internship - An online experience of incident response
- VulnHub - Hands-on environment for learning digital security, computer software & network administration
- Awesome Pentest Github Repository - A curated directory of security related resources
Coding Bootcamps
- Lambda School - A 30 week, immersive program that gives you the tools and training to learn how to code.
- Career Karma - Find the best coding bootcamp for you.
MOOCs & Online Courses
- Udacity - Free and paid online classes.
- Coursera - Courses from schools and universities like Stanford and Yale.
- InsideSherpa - Online training programs by companies to help educate and recruit new talent
- Udemy - Online learning and teaching platform.
- edX - Free online courses from institutions like Harvard, MIT, Microsoft and more.
- Codecademy - Online learing platform for coding.
- MIT OPENCOURSEWARE - Browse and learn with free MIT courses' material.
- Microsoft Virtual Academy - Free courses on IT basic concepts and Microsoft products and services.
- Awesome Courses - List of awesome university courses for learning Computer Science.
- Lynda - Online learing platform.
- Stanford Online - Stanford's courses platform.
- Pluralsight - Paid learing platform made to help you build your carreer or land a job.
- Khan Academy - Free online learing platform.
- Sololearn - Learn coding from the ground up for free!! (also availabel on android)
- Y Combinator - Learn how engineering works at a Y Combinator startup
Programming Platforms
- HackerRank - Solve code challenges to prepare for programming interviews.
- HackerEarth - Solve code challenges to help companies find innovative solutions for their businesses.
- CodeChef - Non-profit competitive programming platform.
- TopCoder - Partecipate in code challenges and help solve real world problems.
- CodeForces - Russian website dedicated to competitive programming.
- ProjectEuler - Solve computational and mathematical problems using your programming skills.
- Spoj - Programming contests with online judging system.
- VisuAlgo - Visualising data structures and algorithms through animation.
- LeetCode - Develop programming skills for your next interview.
- FireCode - An online coding interview preparation.
- CodeWars - Code challenges platform to level up your skills.
- CodinGame - Learn to code by playing games.
- DailyProgrammer - Solutions to programming challenges, peer reviewed with community feedback.
- CodeFights - Practice programming and land a job.
- UVa - Programming contests with online judging system.
- Stanford ACM ICPC - Stanford Notebook provides printable templates usable during online/on-site contests.
- Exercism - Solve programming challenges from your terminal.
- DailyCodingProblem - Get exceptionally good at coding interviews by solving one problem every day.
Fellowships/Scholarships
- Developer Scholarship from Google - Link for Indian students (Others click here).
- Scholarship Opportunities at Google - Google's scholarship opportunities.
- Microsoft Scholarship Program - For students at US/Canada/Mexico only.
- Thiel Fellowship for young innovators - Intended for students under 23yo and offers a total of $100,000 and guidance to drop out of school and pursue other work.
- The Facebook Fellowship Program - Designed to encourage promising doctoral students who are engaged in areas related to computer science.
- NVIDIA Graduate Fellowships - Fellowship for AI,ML students.
- S.N. Bose Scholars Program - For Indian Students.
- Richard E. Merwin Student Scholarship - For IEEE members.
- The Data Science for Social Good Fellowship - It is a University of Chicago summer program to train aspiring data scientists to work on data mining, machine learning, big data, and data science projects with social impact.
- The Data Incubator - The Data Incubator is an 8-week educational fellowship preparing students with Master's degrees and PhDs for careers in big data and data science.
- Kleiner Perkins Fellow - Engineering - Kleiner Perkins Fellows program matches accepted fellows up with their partnering Silicon Valley startups over the summer.
Programming Events
- Google Summer of Code - A global program focused on bringing more student developers into open source software development.
- Google CodeJam - Google’s largest coding competition.
- Google Kickstart - Many online rounds to give students the opportunity to develop their coding skills and pursue a career at Google.
- Google HashCode - Programming competition organized by Google for students and industry professionals across Europe, the Middle East and Africa.
- Google Code-in - A competition for pre-university students(13 to 17 years old) to introduce themselves to the world of open source by doing small tasks for various open source projects.
- Facebook HackerCup - Annual programming contest organised by Facebook.
- List of Open Source Internship Programs - Includes Rails Girls Summer of Code and Outreachy.
- Hactoberfest - Organised by Digital Ocean in October.
- IEEEXtreme - Annual 24 hour long team contest for IEEE members.
Hackathons
- Devpost - Online or in-person hackathons browsing platform.
- hackathon.io - Browse in-person hackathons.
- Hackalist - List of upcoming hackathons.
- AngelHack - Hackathon planning organization.
- Hackevents - Hackathons search engine.
- Yelp Dataset Challenge - The challenge is a chance for students to conduct research or analysis on our data and share their discoveries with Yelp.
- hack.summit() - Virtual conference where you can learn from the world's most renowned programmers.
Technical Interviews
- Technical Interview Megarepo - Mega repo on approaching technical interviews
- Interview Questions in JavaScript - Approaching interview questions specifcially for JavaScript
- Algorithms - Interview questions on algorithms in JavaScript
Products, Opportunities & Discounts
- Codugh API Marketplace - Earn from your API when developers use it.
- Github Student Pack - Get free access to the best developer tools in one place.
- Visual Studio Dev Essentials - Free learning resources and programming tools.
- Student Discounts in Tech - A list of student discounts for tech related products
- Repl.it - Instant IDE to learn, build, collaborate, and host all in one place
Conclusion
If you have any suggestions or feedback, feel free to open a pull request or create an issue. This was inspired by @anu0012.