A collection of software engineers that deserve to be in this collection

They are the most awesome programmers in history. Will you be one? While we give these great thinkers their well earned respect, you can develop your skills and knowledge with our guides and skills tracker.

Undoubtedly, there are some great candidates that we've overlooked. If you see a programmer, active today or from the past, that you think should be included, contact us.

Algorithms / Datatypes

Donald E. Knuth

Helped contribute to the development of algorithm analysis and help formalize algorithm techniques like asymptotic notation and knuth-bendix completion algorithm.

Edsger W. Dijkstra

Helped develop many profoundly impactful algorithms such as [Dijkstra's algorithm (shortest path algorithm)](https://en.wikipedia.org/wiki/Dijkstra%27s_algorithm), [Prim's algorithm](https://en.wikipedia.org/wiki/Prim%27s_algorithm) and [Shunting-yard algorithm](https://en.wikipedia.org/wiki/Shunting-yard_algorithm)

John Von Neumann

The inventor of the [Merge Sort](https://en.wikipedia.org/wiki/Merge_sort) algorithm, an efficient and one of the most widely used sorting algorithms.

Ray Solomonoff

The creator of [algorithmic probability](https://en.wikipedia.org/wiki/Algorithmic_probability) which introduced a method to assign prior probability to a given observation, the founder of the theory of unviersal [inductive inference](https://en.wikipedia.org/wiki/Inductive_reasoning#Inductive_inference), and founder of [algorithmic information theory](https://en.wikipedia.org/wiki/Algorithmic_information_theory).

Leslie Lamport

The creator of the impactful [Bakery algorithm](https://en.wikipedia.org/wiki/Lamport%27s_bakery_algorithm) which orders processes based on their arrival like a bakery providing "loop freedom" and improving safety for shared resources on multiple threads, the creator of the [Paxos](https://en.wikipedia.org/wiki/Paxos_(computer_science)) algorithm / protocol now considered to be the de-facto framework for designing consensus and agreement in a distributed computing system, and the creator of [Lamport timestamps](https://en.wikipedia.org/wiki/Lamport_timestamps) introduced through his well-cited paper "Time, Clocks, and the Ordering of Events in a Distributed System"

Robert W. Floyd

The creator of important algorithms like [Floyd–Warshall algorithm](https://en.wikipedia.org/wiki/Floyd%E2%80%93Warshall_algorithm) for finding the shortest path in a graph, the [Floyd's cycle-finding algorithm](https://en.wikipedia.org/wiki/Cycle_detection#Tortoise_and_hare), and the [Floyd–Steinberg dithering](https://en.wikipedia.org/wiki/Floyd%E2%80%93Steinberg_dithering) algorithm commonly used for image manipulation.

Tony Hoare

The creator the sorting algorithm [quicksort](https://en.wikipedia.org/wiki/Quicksort), one of the most commonly used algorithms.

Michael Burrows

The co-creator of the efficient string compression algorithm [Burrows–Wheeler transform](https://en.wikipedia.org/wiki/Burrows%E2%80%93Wheeler_transform)

David Wheeler

https://en.wikipedia.org/wiki/David_Wheeler_(British_computer_scientist)): The co-creator of the efficient string compression algorithm [Burrows–Wheeler transform](https://en.wikipedia.org/wiki/Burrows%E2%80%93Wheeler_transform).

Cliff Shaw

The creator of one of the most common data structures, the [linked list](https://en.wikipedia.org/wiki/Linked_list).

Stephen Cook

The author of seminal papers that describe the notions of [polynomial-time reduction](https://en.wikipedia.org/wiki/Polynomial-time_reduction), [NP-completeness](https://en.wikipedia.org/wiki/NP-completeness) and [propositional proof system](https://en.wikipedia.org/wiki/Propositional_proof_system), all making significant contributions to algorithmic complexity.

Richard M. Karp

The co-creator of the [Edmonds-Karp algorithm](https://en.wikipedia.org/wiki/Edmonds%E2%80%93Karp_algorithm) for efficiently computing a networks [maximum flow](https://en.wikipedia.org/wiki/Maximum_flow_problem), the author of proof for [21 NP-complete problems](https://en.wikipedia.org/wiki/Karp%27s_21_NP-complete_problems), the co-publisher of the [Hopcroft–Karp algorithm](https://en.wikipedia.org/wiki/Hopcroft%E2%80%93Karp_algorithm) for finding maximum cardinality [matchings](https://en.wikipedia.org/wiki/Matching_(graph_theory)), the co-creator of the [Rabin–Karp algorithm](https://en.wikipedia.org/wiki/Rabin%E2%80%93Karp_algorithm) for string searching, and co-publisher of the [Karp–Lipton theorem](https://en.wikipedia.org/wiki/Karp%E2%80%93Lipton_theorem).

John Hopcroft

The co-publisher of the [Hopcroft–Karp algorithm](https://en.wikipedia.org/wiki/Hopcroft%E2%80%93Karp_algorithm) for finding maximum cardinality [matchings](https://en.wikipedia.org/wiki/Matching_(graph_theory)) and the co-publisher of the [Hopcroft-Tarjan Planarity Algorithm](https://en.wikipedia.org/wiki/Planarity_testing#Path_addition_method).

Robert Tarjan

The publisher of the [Tarjan's off-line lowest common ancestors algorithm](https://en.wikipedia.org/wiki/Tarjan%27s_off-line_lowest_common_ancestors_algorithm), the publisher of [Tarjan's strongly connected components algorithm](https://en.wikipedia.org/wiki/Tarjan%27s_strongly_connected_components_algorithm), the co-author of the [Hopcroft-Tarjan Planarity Algorithm](https://en.wikipedia.org/wiki/Planarity_testing#Path_addition_method), the creator of the [Fibonacci heap](https://en.wikipedia.org/wiki/Fibonacci_heap) data structure and co-created the [splay tree](https://en.wikipedia.org/wiki/Splay_tree) data structure.

Robert Tarjan

The publisher of the [Tarjan's off-line lowest common ancestors algorithm](https://en.wikipedia.org/wiki/Tarjan%27s_off-line_lowest_common_ancestors_algorithm), the publisher of [Tarjan's strongly connected components algorithm](https://en.wikipedia.org/wiki/Tarjan%27s_strongly_connected_components_algorithm), the co-author of the [Hopcroft-Tarjan Planarity Algorithm](https://en.wikipedia.org/wiki/Planarity_testing#Path_addition_method), the creator of the [Fibonacci heap](https://en.wikipedia.org/wiki/Fibonacci_heap) data structure and co-created the [splay tree](https://en.wikipedia.org/wiki/Splay_tree) data structure.

Robert Tarjan

The publisher of the [Tarjan's off-line lowest common ancestors algorithm](https://en.wikipedia.org/wiki/Tarjan%27s_off-line_lowest_common_ancestors_algorithm), the publisher of [Tarjan's strongly connected components algorithm](https://en.wikipedia.org/wiki/Tarjan%27s_strongly_connected_components_algorithm), the co-author of the [Hopcroft-Tarjan Planarity Algorithm](https://en.wikipedia.org/wiki/Planarity_testing#Path_addition_method), the creator of the [Fibonacci heap](https://en.wikipedia.org/wiki/Fibonacci_heap) data structure and co-created the [splay tree](https://en.wikipedia.org/wiki/Splay_tree) data structure.

Robert Tarjan

The publisher of the [Tarjan's off-line lowest common ancestors algorithm](https://en.wikipedia.org/wiki/Tarjan%27s_off-line_lowest_common_ancestors_algorithm), the publisher of [Tarjan's strongly connected components algorithm](https://en.wikipedia.org/wiki/Tarjan%27s_strongly_connected_components_algorithm), the co-author of the [Hopcroft-Tarjan Planarity Algorithm](https://en.wikipedia.org/wiki/Planarity_testing#Path_addition_method), the creator of the [Fibonacci heap](https://en.wikipedia.org/wiki/Fibonacci_heap) data structure and co-created the [splay tree](https://en.wikipedia.org/wiki/Splay_tree) data structure.

Robert Tarjan

The publisher of the [Tarjan's off-line lowest common ancestors algorithm](https://en.wikipedia.org/wiki/Tarjan%27s_off-line_lowest_common_ancestors_algorithm), the publisher of [Tarjan's strongly connected components algorithm](https://en.wikipedia.org/wiki/Tarjan%27s_strongly_connected_components_algorithm), the co-author of the [Hopcroft-Tarjan Planarity Algorithm](https://en.wikipedia.org/wiki/Planarity_testing#Path_addition_method), the creator of the [Fibonacci heap](https://en.wikipedia.org/wiki/Fibonacci_heap) data structure and co-created the [splay tree](https://en.wikipedia.org/wiki/Splay_tree) data structure.

Robert Tarjan

The publisher of the [Tarjan's off-line lowest common ancestors algorithm](https://en.wikipedia.org/wiki/Tarjan%27s_off-line_lowest_common_ancestors_algorithm), the publisher of [Tarjan's strongly connected components algorithm](https://en.wikipedia.org/wiki/Tarjan%27s_strongly_connected_components_algorithm), the co-author of the [Hopcroft-Tarjan Planarity Algorithm](https://en.wikipedia.org/wiki/Planarity_testing#Path_addition_method), the creator of the [Fibonacci heap](https://en.wikipedia.org/wiki/Fibonacci_heap) data structure and co-created the [splay tree](https://en.wikipedia.org/wiki/Splay_tree) data structure.

Robert Tarjan

The publisher of the [Tarjan's off-line lowest common ancestors algorithm](https://en.wikipedia.org/wiki/Tarjan%27s_off-line_lowest_common_ancestors_algorithm), the publisher of [Tarjan's strongly connected components algorithm](https://en.wikipedia.org/wiki/Tarjan%27s_strongly_connected_components_algorithm), the co-author of the [Hopcroft-Tarjan Planarity Algorithm](https://en.wikipedia.org/wiki/Planarity_testing#Path_addition_method), the creator of the [Fibonacci heap](https://en.wikipedia.org/wiki/Fibonacci_heap) data structure and co-created the [splay tree](https://en.wikipedia.org/wiki/Splay_tree) data structure.

Robert Tarjan

The publisher of the [Tarjan's off-line lowest common ancestors algorithm](https://en.wikipedia.org/wiki/Tarjan%27s_off-line_lowest_common_ancestors_algorithm), the publisher of [Tarjan's strongly connected components algorithm](https://en.wikipedia.org/wiki/Tarjan%27s_strongly_connected_components_algorithm), the co-author of the [Hopcroft-Tarjan Planarity Algorithm](https://en.wikipedia.org/wiki/Planarity_testing#Path_addition_method), the creator of the [Fibonacci heap](https://en.wikipedia.org/wiki/Fibonacci_heap) data structure and co-created the [splay tree](https://en.wikipedia.org/wiki/Splay_tree) data structure.

Robert Tarjan

The publisher of the [Tarjan's off-line lowest common ancestors algorithm](https://en.wikipedia.org/wiki/Tarjan%27s_off-line_lowest_common_ancestors_algorithm), the publisher of [Tarjan's strongly connected components algorithm](https://en.wikipedia.org/wiki/Tarjan%27s_strongly_connected_components_algorithm), the co-author of the [Hopcroft-Tarjan Planarity Algorithm](https://en.wikipedia.org/wiki/Planarity_testing#Path_addition_method), the creator of the [Fibonacci heap](https://en.wikipedia.org/wiki/Fibonacci_heap) data structure and co-created the [splay tree](https://en.wikipedia.org/wiki/Splay_tree) data structure.

Robert Tarjan

The publisher of the [Tarjan's off-line lowest common ancestors algorithm](https://en.wikipedia.org/wiki/Tarjan%27s_off-line_lowest_common_ancestors_algorithm), the publisher of [Tarjan's strongly connected components algorithm](https://en.wikipedia.org/wiki/Tarjan%27s_strongly_connected_components_algorithm), the co-author of the [Hopcroft-Tarjan Planarity Algorithm](https://en.wikipedia.org/wiki/Planarity_testing#Path_addition_method), the creator of the [Fibonacci heap](https://en.wikipedia.org/wiki/Fibonacci_heap) data structure and co-created the [splay tree](https://en.wikipedia.org/wiki/Splay_tree) data structure.

Robert Tarjan

The publisher of the [Tarjan's off-line lowest common ancestors algorithm](https://en.wikipedia.org/wiki/Tarjan%27s_off-line_lowest_common_ancestors_algorithm), the publisher of [Tarjan's strongly connected components algorithm](https://en.wikipedia.org/wiki/Tarjan%27s_strongly_connected_components_algorithm), the co-author of the [Hopcroft-Tarjan Planarity Algorithm](https://en.wikipedia.org/wiki/Planarity_testing#Path_addition_method), the creator of the [Fibonacci heap](https://en.wikipedia.org/wiki/Fibonacci_heap) data structure and co-created the [splay tree](https://en.wikipedia.org/wiki/Splay_tree) data structure.

Robert Tarjan

The publisher of the [Tarjan's off-line lowest common ancestors algorithm](https://en.wikipedia.org/wiki/Tarjan%27s_off-line_lowest_common_ancestors_algorithm), the publisher of [Tarjan's strongly connected components algorithm](https://en.wikipedia.org/wiki/Tarjan%27s_strongly_connected_components_algorithm), the co-author of the [Hopcroft-Tarjan Planarity Algorithm](https://en.wikipedia.org/wiki/Planarity_testing#Path_addition_method), the creator of the [Fibonacci heap](https://en.wikipedia.org/wiki/Fibonacci_heap) data structure and co-created the [splay tree](https://en.wikipedia.org/wiki/Splay_tree) data structure.

Robert Tarjan

The publisher of the [Tarjan's off-line lowest common ancestors algorithm](https://en.wikipedia.org/wiki/Tarjan%27s_off-line_lowest_common_ancestors_algorithm), the publisher of [Tarjan's strongly connected components algorithm](https://en.wikipedia.org/wiki/Tarjan%27s_strongly_connected_components_algorithm), the co-author of the [Hopcroft-Tarjan Planarity Algorithm](https://en.wikipedia.org/wiki/Planarity_testing#Path_addition_method), the creator of the [Fibonacci heap](https://en.wikipedia.org/wiki/Fibonacci_heap) data structure and co-created the [splay tree](https://en.wikipedia.org/wiki/Splay_tree) data structure.

Robert Tarjan

The publisher of the [Tarjan's off-line lowest common ancestors algorithm](https://en.wikipedia.org/wiki/Tarjan%27s_off-line_lowest_common_ancestors_algorithm), the publisher of [Tarjan's strongly connected components algorithm](https://en.wikipedia.org/wiki/Tarjan%27s_strongly_connected_components_algorithm), the co-author of the [Hopcroft-Tarjan Planarity Algorithm](https://en.wikipedia.org/wiki/Planarity_testing#Path_addition_method), the creator of the [Fibonacci heap](https://en.wikipedia.org/wiki/Fibonacci_heap) data structure and co-created the [splay tree](https://en.wikipedia.org/wiki/Splay_tree) data structure.

John Cocke

The co-creator of the [CYK algorithm](https://en.wikipedia.org/wiki/CYK_algorithm) for parsing context-free grammars in compilers.

Juris Hartmanis

The co-author of an influential paper that establishes the foundations for the field of [computational complexity theory](https://en.wikipedia.org/wiki/Computational_complexity_theory) and introduced [time complexity classes](https://en.wikipedia.org/wiki/Time_complexity#Complexity_classes) quantifying the efficiency of an algorithm.

Arthur Samuel

The first known user of the [hash table](https://en.wikipedia.org/wiki/Hash_table) data structure in a program.

Richard E. Stearns

The co-author of an influential paper that establishes the foundations for the field of [computational complexity theory](https://en.wikipedia.org/wiki/Computational_complexity_theory) and introduced [time complexity classes](https://en.wikipedia.org/wiki/Time_complexity#Complexity_classes) quantifying the efficiency of an algorithm.

Geoffrey Hinton

One of the first to demonstrate the use of [Backpropagation](https://en.wikipedia.org/wiki/Backpropagation) algorithm to train multi-layer neural networks influencing the deep learning community.

Chi-Chih Andrew Yao

The author of complexity theory proof [Yao's principle](https://en.wikipedia.org/wiki/Yao%27s_principle) which "has become a fundamental technique for reasoning about randomized algorithms and complexity", the co-author of [Dolev–Yao model](https://en.wikipedia.org/wiki/Dolev%E2%80%93Yao_model), the author of important rules for [Pseudorandom number generators](https://en.wikipedia.org/wiki/Pseudorandom_number_generator), the author of the paper "On the security of public key protocols", the author of [Yao's Millionaires' Problem](https://en.wikipedia.org/wiki/Yao%27s_Millionaires%27_Problem) and the author of the XOR-lemma technique.

Leslie G. Valiant

The author of an important paper introducing [Probably approximately correct learning](https://en.wikipedia.org/wiki/Probably_approximately_correct_learning) model for machine learning, and the discoverer of [Sharp-P-complete](https://en.wikipedia.org/wiki/Sharp-P-complete) definition in complexity theory.

Michael O. Rabin

The creator of the first [randomized algorithm](https://en.wikipedia.org/wiki/Randomized_algorithm#History) with the [Closest pair problem](https://en.wikipedia.org/wiki/Closest_pair_of_points_problem), the co-creator of the [Miller–Rabin primality test](https://en.wikipedia.org/wiki/Miller%E2%80%93Rabin_primality_test), and the co-creator of the [Rabin–Karp algorithm](https://en.wikipedia.org/wiki/Rabin%E2%80%93Karp_algorithm) for string searching.

Charles E. Leiserson

The creator of the [fat-tree](https://en.wikipedia.org/wiki/Fat_tree) interconnection network for provably efficient communication, and the creator of the [Cache-oblivious algorithm](https://en.wikipedia.org/wiki/Cache-oblivious_algorithm).

Jon Bentley

The creator of the [k-d tree](https://en.wikipedia.org/wiki/K-d_tree) space-partitioning data structure widely used for searching with multidimensional keys, and the creator of the [Bentley–Ottmann algorithm](https://en.wikipedia.org/wiki/Bentley%E2%80%93Ottmann_algorithm).



Tip: Learn about data engineering and data analysis to improve your developer career