Personal profile of software engineering skills
β¬ Optional, π¦ Required for all, π© Learned, π₯ Declined
Syntax
Statements
Functions
Data structures
Process & style
π© value
π© if
π© recursion
π© array
π¦ refactoring
π© identifier
π© loops
π© function
π¦ instance
π¦ code review
π© variable
π¦ assignment
π© return
π© object
π¦ antipatterns
π© constant
π© logical operators
π¦ signature
π¦ collection
π¦ paradigm
π¦ scalar
π© class
π© argument
π¦ hash table
π© algorithm
π¦ literal
π© while
π¦ parameter
π¦ linked list
π¦ magic numbers
π¦ expression
π© do..while
π¦ pure function
π¦ queue
π¦ hardcode
π¦ heap
π© for
π© lambda
π¦ stack
π¦ complexity
π© type
π© switch
π¦ side effects
π¦ deque
π¦ decomposition
π© primitive types
π© break, continue
π¦ closure
π¦ serialization
π© unittest
π© reference
π© bitwise operators
π¦ partial
π¦ mixin, extend
π© git
π© flag
π© throw
π© wrapper
π¦ null
π© github
π¦ lexical scope
π© try..catch
π¦ chaining
π© typed arrays
π¦ dead code
π© code block
π© equality operators
π© callback
π© map
π¦ unreachable code
π© memoize
π© set
π© duplicate code
π¦ listener
π© string parsing
π© exception
β¬οΈ pipe
β¬οΈ Proxy
π¦ return early
Multi-paradigm programming
Theory
OOP basics
Abstractions
Patterns
π© Procedural programming
π© constructor
β¬ struct, record
π¦ Singleton
π₯ Imperative programming
π© new
β¬ Mutable state
π₯ Structured programming
π© Static method
β¬ Immutable state
π₯ Non-structured programming
π© Method
β¬ Enum
π© Functional programming
π₯ Async method
π¦ Linked list
π¦ Prototype-based programming
π¦ Getters, Setters
π¦ Doubly list
π© Object-oriented programming
π© Public fields
π¦ Unrolled list
β¬ Object-based programming
π© Private fields
π¦ Circular list
π₯ Generic programming
π© Field declarations
π¦ Trees
π¦ Concurrent computing
π₯ Inheritance
π© Graphs
π₯ Asyncronous programming
π© Parent class
π¦ Functor
π© Parallel programming
π₯ Polymorphism
π¦ Functional object
π¦ Reactive programming
π₯ Abstract class
β¬ Monad
β¬ FRP (Functional-reactive)
π₯ Interface
π¦ Generator
π₯ Automata-based programming
π© Encapsulation
π¦ Iterator
π¦ Domain-specific languages
β¬ Hidden class
π¦ Async Iterator
π¦ Multi-paradigm programming
β¬ Object form
β¬ Metaprogramming
π¦ instance
β¬ Actor model
β¬ Introspection
β¬ Reflection