Mô tả

Updated for the 2023 hiring season! Join a live online community of over 900,000+ developers and a course taught by an industry expert that has actually worked both in Silicon Valley and Toronto as a senior developer. Graduates of this course are now working at Google, Tesla, Amazon, Apple, IBM, JP Morgan, Meta + other top tech companies.

Want to land a job at a great tech company like Google, Microsoft, Meta, Netflix, Amazon, or other companies but you are intimidated by the interview process and the coding questions? Do you find yourself feeling like you get "stuck" every time you get asked a coding question? This course is your answer. Using the strategies, lessons, and exercises in this course, you will learn how to land offers from all sorts of companies.

Many developers who are "self taught", feel that one of the main disadvantages they face compared to college educated graduates in computer science is the fact that they don't have knowledge about algorithms, data structures and the notorious Big-O Notation. Get on the same level as someone with computer science degree by learning the fundamental building blocks of computer science which will give you a big boost during interviews. You will also get access to our private online chat community with thousands of developers online to help you get through the course.

Here is what you will learn in this course:

Technical:

1. Big O notation

2. Data structures:

* Arrays
* Hash Tables
* Singly Linked Lists
* Doubly Linked Lists
* Queues
* Stacks
* Trees (BST, AVL Trees, Red Black Trees, Binary Heaps)
* Tries
* Graphs

3. Algorithms:

* Recursion
* Sorting
* Searching
* Tree Traversal
* Breadth First Search
* Depth First Search
* Dynamic Programming

Non Technical:

- How to get more interviews
- What to do during interviews
- What do do after the interview
- How to answer interview questions
- How to handle offers
- How to negotiate your salary
- How to get a raise

Unlike most instructors, I am not a marketer or a salesperson. I am a senior developer and programmer who has worked and managed teams of engineers and have been in these interviews both as an interviewee as well as the interviewer.

My job as an instructor will be successful if I am able to help you become better at interviewing and land more jobs. This one skill can really change the course of your career and I hope you sign up today to see what it can do for your career!


Taught by:

Andrei is the instructor of the highest rated Web Development course on Udemy as well as one of the fastest growing. His graduates have moved on to work for some of the biggest tech companies around the world like Apple, Google, JP Morgan, IBM, etc... He has been working as a senior software developer in Silicon Valley and Toronto for many years, and is now taking all that he has learned, to teach programming skills and to help you discover the amazing career opportunities that being a developer allows in life. 

Having been a self taught programmer, he understands that there is an overwhelming number of online courses, tutorials and books that are overly verbose and inadequate at teaching proper skills. Most people feel paralyzed and don't know where to start when learning a complex subject matter, or even worse, most people don't have $20,000 to spend on a coding bootcamp. Programming skills should be affordable and open to all. An education material should teach real life skills that are current and they should not waste a student's valuable time.   Having learned important lessons from working for Fortune 500 companies, tech startups, to even founding his own business, he is now dedicating 100% of his time to teaching others valuable software development skills in order to take control of their life and work in an exciting industry with infinite possibilities. 

Andrei promises you that there are no other courses out there as comprehensive and as well explained. He believes that in order to learn anything of value, you need to start with the foundation and develop the roots of the tree. Only from there will you be able to learn concepts and specific skills(leaves) that connect to the foundation. Learning becomes exponential when structured in this way. 

Taking his experience in educational psychology and coding, Andrei's courses will take you on an understanding of complex subjects that you never thought would be possible.  

See you inside the courses!


Bạn sẽ học được gì

Ace coding interviews given by some of the top tech companies

Become more confident and prepared for your next coding interview

Learn, implement, and use different Data Structures

Learn, implement and use different Algorithms

Get more interviews

Professionally handle offers and negotiate raises

Become a better developer by mastering computer science fundamentals

Yêu cầu

  • No experience with data structures or algorithms needed
  • Basic understanding of one programming language
  • No previous computer science knowledge necessary

Nội dung khoá học

22 sections

Introduction

5 lectures
How To Succeed In This Course
05:04
Join Our Online Classroom!
04:01
Exercise: Meet Your Classmates & Instructor
01:45
ZTM Resources
04:23
Monthly Coding Challenges, Free Resources and Guides
00:45

Getting More Interviews

19 lectures
Section Overview
05:39
Resume
05:09
Exercise: Resume Walkthrough
17:05
Resume Review
02:37
Resources: Resume Templates
00:41
What If I Don't Have Enough Experience?
15:02
Optional Exercise: Github Master
00:38
Optional: Exercise: Github README
00:07
LinkedIn
08:22
Optional Exercise: LinkedIn Endorsements
00:46
Portfolio
03:23
Resources: Free Portfolio Templates
00:23
Email
08:24
Resources: Email
00:22
Where To Find Jobs?
06:02
Resources: Where To Find Jobs?
00:08
When Should You Start Applying?
03:34
Section Summary
02:17
Monthly Industry Updates
00:14

Big O

28 lectures
Python, Java, C/C++, C#, Golang, Swift, Kotlin, TypeScript, Scala, Perl, Rust
00:56
Setting Up Your Environment
02:53
Section Overview
02:24
Big O Cheatsheet
00:14
IMPORTANT: Repl Code
00:34
What Is Good Code?
06:57
Big O and Scalability
11:08
O(n)
05:39
O(1)
06:10
Exercise: Big O Calculation
00:20
Solution: Big O Calculation
05:54
Exercise: Big O Calculation 2
00:28
Solution: Big O Calculation 2
02:29
Simplifying Big O
01:50
Big O Rule 1
04:28
Big O Rule 2
06:36
Big O Rule 3
03:13
O(n^2)
07:13
Big O Rule 4
06:47
Big O Cheat Sheet
03:18
What Does This All Mean?
05:32
O(n!)
01:18
3 Pillars Of Programming
03:32
Space Complexity
02:22
Exercise: Space Complexity
06:24
Exercise: Twitter
07:13
Optional: Javascript Loops
03:27
Section Summary
04:43

How To Solve Coding Problems

9 lectures
Section Overview
05:04
What Are Companies Looking For?
03:05
What We Need For Coding Interviews
03:27
Exercise: Google Interview
02:31
Exercise: Interview Question
20:33
Exercise: Interview Question 2
22:59
Review Google Interview
01:30
Optional Exercise: Google Interview On Your Own
00:35
Section Summary
03:35

Data Structures: Introduction

5 lectures
Section Overview
01:58
What Is A Data Structure?
05:53
How Computers Store Data
12:33
Data Structures In Different Languages
03:27
Operations On Data Structures
03:05

Data Structures: Arrays

12 lectures
Arrays Introduction
13:51
Static vs Dynamic Arrays
06:40
Quick Note: Upcoming Video
00:35
Optional: Classes In Javascript
24:51
Implementing An Array
17:19
Strings and Arrays
01:04
Exercise: Reverse A String
01:35
Solution: Reverse A String
10:31
Exercise: Merge Sorted Arrays
00:44
Solution: Merge Sorted Arrays
14:12
Interview Questions: Arrays
00:25
Arrays Review
03:28

Data Structures: Hash Tables

13 lectures
Hash Tables Introduction
04:10
Hash Function
05:56
Hash Collisions
09:43
Hash Tables In Different Languages
03:30
Exercise: Implement A Hash Table
03:51
Solution: Implement A Hash Table
17:24
keys()
06:11
Extra: keys() Without Collision
00:22
Hash Tables VS Arrays
02:01
Exercise: First Recurring Character
01:18
Solution: First Recurring Character
16:11
Interesting Tidbit: Python Dictionaries
00:10
Hash Tables Review
06:09

Data Structures: Linked Lists

21 lectures
Linked Lists Introduction
02:26
What Is A Linked List?
04:36
Exercise: Imposter Syndrome
02:55
Exercise: Why Linked Lists?
02:05
Solution: Why Linked Lists?
05:35
What Is A Pointer?
05:45
Our First Linked List
08:38
Solution: append()
05:25
Solution: prepend()
02:27
Node Class
02:40
insert()
05:12
Quick Note: Upcoming Video
00:13
Solution: insert()
13:08
Solution: remove()
05:21
Doubly Linked Lists
03:18
Exercise: Doubly Linked Lists
00:08
Solution: Doubly Linked Lists
08:50
Singly VS Doubly Linked Lists
02:40
Exercise: reverse()
01:30
Solution: reverse()
07:38
Linked Lists Review
05:07

Data Structures: Stacks + Queues

15 lectures
Stacks + Queues Introduction
02:58
Stacks
03:28
Queues
03:30
Exercise: Stacks VS Queues
03:06
Solution: Stacks VS Queues
03:39
Quick Note: Upcoming Video
00:20
Optional: How Javascript Works
24:12
Exercise: Stack Implementation (Linked Lists)
02:23
Solution: Stack Implementation (Linked Lists)
08:58
Exercise: Stack Implementation (Array)
00:53
Solution: Stack Implementation (Array)
03:56
Exercise: Queue Implementation
01:48
Solution: Queue Implementation
07:50
Queues Using Stacks
02:04
Stacks + Queues Review
02:19

Data Structures: Trees

18 lectures
Trees Introduction
06:23
Binary Trees
05:45
O(log n)
07:00
Binary Search Trees
06:12
Balanced VS Unbalanced BST
03:42
BST Pros and Cons
02:26
Exercise: Binary Search Tree
03:57
Solution: insert()
10:10
Solution: lookup()
04:54
Extra Exercise: remove()
02:28
Solution: remove()
07:41
AVL Trees + Red Black Trees
02:56
Resources: AVL Trees + Red Black Trees
00:16
Binary Heaps
05:36
Quick Note on Heaps
01:08
Priority Queue
05:27
Trie
03:16
Tree Review
00:51

Data Structures: Graphs

9 lectures
Graphs Introduction
02:28
Types Of Graphs
03:32
Exercise: Guess The Graph
02:45
Graph Data
05:58
Exercise: Graph Implementation
04:06
Solution: Graph Implementation
04:50
Graphs Review
02:04
Data Structures Review
01:52
What Else Is Coming Up?
01:53

Algorithms: Recursion

12 lectures
Introduction to Algorithms
03:51
Recursion Introduction
05:36
Stack Overflow
06:17
Anatomy Of Recursion
10:27
Exercise: Factorial
03:25
Solution: Factorial
06:20
Exercise: Fibonacci
01:59
Solution: Fibonacci
11:21
Recursive VS Iterative
04:16
When To Use Recursion
04:00
Exercise: Reverse String With Recursion
00:12
Recursion Review
02:47

Algorithms: Sorting

27 lectures
Sorting Introduction
07:01
The Issue With sort()
06:51
Sorting Algorithms
03:37
Bubble Sort
03:45
Exercise: Bubble Sort
00:05
Solution: Bubble Sort
05:06
Selection Sort
02:39
Exercise: Selection Sort
00:05
Solution: Selection Sort
02:23
Dancing Algorithms
01:36
Insertion Sort
02:38
Exercise: Insertion Sort
00:05
Solution: Insertion Sort
02:06
Merge Sort and O(n log n)
08:59
Exercise: Merge Sort
00:05
Solution: Merge Sort
04:44
Stable VS Unstable Algorithms
00:10
Quick Sort
07:40
Optional Exercise: Quick Sort
00:15
Which Sort Is Best?
04:40
Resources: Heap Sort
00:09
Radix Sort + Counting Sort
04:17
Resources: Radix Sort + Counting Sort
00:02
Exercise: Sorting Interview
01:27
Solution: Sorting Interview
07:07
Sorting In Your Language
01:27
Sorting Review
02:53

Algorithms: Searching + BFS + DFS

20 lectures
Searching + Traversal Introduction
01:34
Linear Search
03:37
Binary Search
06:05
Graph + Tree Traversals
03:56
BFS Introduction
02:44
DFS Introduction
03:23
BFS vs DFS
03:20
Resources: BFS vs DFS
00:32
Exercise: BFS vs DFS
00:44
Solution: BFS vs DFS
03:16
breadthFirstSearch()
09:15
breadthFirstSearchRecursive()
05:33
PreOrder, InOrder, PostOrder
05:21
depthFirstSearch()
12:03
Optional Exercise: Validate A BST
00:07
Graph Traversals
03:53
BFS in Graphs
02:07
DFS in Graphs
02:49
Dijkstra + Bellman-Ford Algorithms
05:11
Searching + Traversal Review
04:21

Algorithms: Dynamic Programming

8 lectures
Dynamic Programming Introduction
01:51
Memoization 1
07:47
Memoization 2
03:56
Fibonacci and Dynamic Programming
05:33
Dynamic Programming
05:47
Implementing Dynamic Programming
09:12
Interview Questions: Dynamic Programming
00:06
Dynamic Programming Review
04:45

Non Technical Interviews

15 lectures
Section Overview
02:38
During The Interview
09:04
Exercise: Hero Stories
00:17
Tell Me About Yourself
05:30
Exercise: Your Pitch
00:18
Why Us?
05:06
Tell Me About A Problem You Have Solved
05:18
Exercise: Past Projects
00:24
What Is Your Biggest Weakness
02:19
Exercise: Your Biggest Weakness
00:15
Any Questions For Us?
03:24
Resources: Questions To Ask A Company
00:04
Secret Weapon
08:11
After The Interview
05:24
Section Summary
03:56

Offer + Negotiation

8 lectures
Section Overview
02:10
Handling Rejection
04:07
Negotiation 101
09:40
Handling An Offer
09:03
Handling Multiple Offers
07:29
Getting A Raise
07:41
Exercise: Negotiation Master
00:18
Section Summary
02:09

Thank You

3 lectures
Become an Alumni
00:37
Thank You.
00:52
What You Can Do Now
00:24

Extras: Google, Amazon, Facebook Interview Questions

6 lectures
Coding Problems
01:25
Top Interview Questions
00:54
Amazon Interview Questions
02:37
Facebook Interview Questions
00:33
Google Interview Questions
00:34
Domain Specific Questions
00:39

Contributing To Open Source To Gain Experience

3 lectures
Contributing To Open Source
14:08
Contributing To Open Source 2
09:40
Exercise: Contribute To Open Source
00:47

Extra Bits

9 lectures
Learning Guideline
00:10
Quick Note: Upcoming Videos
00:19
From JTS: Learn to Learn
01:59
From JTS: Start With Why
02:43
Coding Challenges
00:29
How To Use Leetcode
02:27
AMA - 100,000 Students!!
38:30
Course Review
1 question
The Final Challenge
1 question

BONUS SECTION

1 lectures
Special Bonus Lecture
00:16

Đánh giá của học viên

Chưa có đánh giá
Course Rating
5
0%
4
0%
3
0%
2
0%
1
0%

Bình luận khách hàng

Viết Bình Luận

Bạn đánh giá khoá học này thế nào?

image

Đăng ký get khoá học Udemy - Unica - Gitiho giá chỉ 50k!

Get khoá học giá rẻ ngay trước khi bị fix.