These implementations are for learning purpose. The solution would be provided in any programming language.
You are welcomed to contribute in the repository. For contributions in the repository, Do read Contribution Guidelines.
- Contribution Guidelines
- Creating Pull Request using Git
- Sample Code
- Moderator
- Advantage of Contributing to the repository
- Order to Follow for Learning
- Track for Different Profiles
- Important Links
- Shoaib Rayeen - I am A Software Engineer. Know More!
The goal for the repository can be summarised as follows:-
- Learn How to Use Git
- Learn How to Write Clean Code
- Learn How to Solve Problems with Multiple Approaches
- Learn to Understand Other's Code
- Learn to Review Other's Code
- Learn How to Contribute in Open Source
The Following Order is the most effective to learn Data Structures and Algorithms:-
- Basic
- All Searching Algorithms
- All Sorting Algorithms
- Data Structures
- String
- Array/Vector
- Matrix
- Stack, Queue and Priority Queue
- Linked List
- Binary Tree
- Heap
- Set and Hash Map
- Graph
- Trie
- Advanced Data Structure ( Segment Tree, B+ Tree, etc)
- Standard Template Library ( STL - Only Available in C++ )
- Algorithm Techniques
- Bitwise Algorithm
- Dynamic Programming
- Divide and Conquer
- Backtracking
- Greedy Approach
- Advanced Algorithm Techniques
The mentioned profiles and their respective tracks are only for Freshers.
-
Software Development Engineer
- Quantitative Aptitudes and Puzzles
- Data Structures and Algorithms in C, C++, Java or Python
- Problem Solving Skills
- Databases ( Relational or Non-Relational )
- System Design and Query
- At least 3 Projects ( Either on Team or Individual )
- Any Framework ( Plus Point )
-
UI/UX Designer
- Quantitative Aptitudes
- Data Structures and Algorithms in C, C++, Java or Python
- Problem Solving Skills
- Databases ( Relational or Non-Relational )
- At least 2 Projects on UI/UX Design
- Any Framework ( Vue.js, React, Django, etc. )
-
Full Stack Web Developer
- Quantitative Aptitudes and Puzzles
- Data Structures and Algorithms in C, C++, Java or Python
- Problem Solving Skills
- Databases ( Relational or Non-Relational )
- Good hands on HTML, CSS, and Javascript
- At least 3 Projects ( Either on Team or Individual )
- Any Framework ( Plus Point )
-
Front-end Developer
- Data Structures and Algorithms in C, C++, Java or Python
- Problem Solving Skills
- At least 3 Projects ( Either on Team or Individual )
- Good hands on HTML, CSS, and Javascript
- Any Framework ( Plus Point )
-
Solution Engineer or Solution Architect
- Quantitative Aptitudes and Puzzles
- Data Structures and Algorithms in C, C++, Java or Python
- Problem Solving Skills
- Databases ( Relational or Non-Relational )
- At least 3 Projects ( Either on Team or Individual )
-
Data Analyst
- Quantitative Aptitudes
- Data Structures and Algorithms in C, C++, Java or Python
- Problem Solving Skills
- Knowledge of Probability and Statistics
- At least 2 Projects based on Data ( Either R or Python )
-
Business Analyst, Technical Analyst or Business Techinal Analyst
- Quantitative Aptitude and Puzzles
- Good Communication Skill
- Applying Business Intelligence to Case Studies
- Good Knowledge of Machine Learning
- Knowledge of Probability and Statistics
- At least 2 Good Projects based on Data ( Either R, SAS or Python )
-
Data Scientist
- Data Structures and Algorithms in C, C++, Java or Python
- Problem Solving Skills
- Good Knowledge of Neural Networks and Machine Learning
- At least 2 Good Projects based on NN or ML
-
Android Developer
- Quantitative Aptitudes and Puzzles
- Data Structures and Algorithms in Java
- Problem Solving Skills
- Databases ( Relational or Non-Relational )
- At least 2 Projects on Androids ( Either on Team or Individual )
-
iOS Developer
- Quantitative Aptitudes
- Data Structures and Algorithms
- Problem Solving Skills
- At least 2 Projects on iOS
-
AR/VR Developer
- Problem Solving Skills
- At least 2 Projects on AR/VR
The following links are for Programming Languages, Databases, Alexa Skills, Projects and AI Games -
- Learn Python
- Learn R
- Learn LEX and YACC
- Learn Shell Programming
- Competitive Coding in C++ and Python
- Learn to Write SQL Query
- Learn About Building Alexa Skills
- Url Shortener in Spring Boot Java and MySQL
- Profile Management System in Ruby on Rails, PostgreSQL, ElasticSearch, Sidqkiq and Redis
- Handwritten Digit Recognition
- Detect if It's A Cat or A Dog
- Accident Prevention in OpenCV, Python
- Chatbot in Flask, Python and AIML
- Heart Disease Predictor in R
- Buffer Cache Simulation in C++
- File Transfer Protocol in C++
- Rock Paper Scissor
- Tic Toc Toe