Skip to content
This repository has been archived by the owner on Nov 4, 2020. It is now read-only.

Latest commit

 

History

History
128 lines (105 loc) · 4.84 KB

README-TECH.md

File metadata and controls

128 lines (105 loc) · 4.84 KB

Hall of Technologies

Tech Stack

Tooling:

  • Terminal and shell (zsh)
  • Version control with Git

Documentation:

  • README with Markdown
  • API Blueprint

Web Development:

  • JavaScript, Node.js
  • HTML, Handlebars, EJS
  • CSS, PostCSS, Stylus
  • npm, Yarn, Bower
  • Express, Feathers, Hapi, Koa
  • Axios, SuperAgent
  • jQuery, Zepto
  • Angular 2
  • Vue.js
  • React.js
  • Webpack
  • PM2

Web Application:

  • RESTful HTTP API
  • Application CORS
  • Environment Variables

Database:

  • NeDB
  • MongoDB, Mongoose
  • PostgreSQL, MySQL/MariaDB, SQLite, Sequelize

Authentication:

  • Local Password
  • OAuth, Passport
    • GitHub
    • Facebook
    • Twitter
    • Google

Testing:

  • Mocha, Karma, Jasmine
  • Chai, Chai HTTP
  • PhantomJS, Electron, Selenium, Nightmare

Continuous Integration/Deployment/Delivery:

  • Travis CI
  • Snap CI
  • GitLab CI
  • Codeship

Technical Keywords

  • professional developer workflow, program (input, process, output), software development life cycle (waterfall, agile, scrum, kanban, lean), semantic versioning
  • operating system (Macintosh, Linux: Ubuntu, Mint, Fedora, CentOS), code editors (Vim, Atom) and its various plugins
  • terminal and shell scripting, Git version control and GitHub, a bit of automation, terminal multiplexer (tmux)
  • HTML5, CSS3, JavaScript (ES6) and Node.js + npm/yarn, with its specific concepts of AJAX, callback, promise, async/await, also day-to-day tools like nodemon and PM2
    • Node.js web frameworks: Express.js, Hapi, Restify, Koa, LoopBack, Seneca
  • problem solving, knowledge discovery, documentation (Markdown), code reviews, debugging, refactoring, error handling
  • data structures (string, number, boolean, array, queue, graph, linked list), algorithms and pseudocode (sort, search, queue), programming, and its paradigms (imperative like procedural, declarative like functional, object-oriented, event-driven reactive, immutability, etc)
    • functional: pure function (slice, filter, reject, map, reduce), techniques (closure, currying, recursion, functors, streams, monad), first-class & higher order function, immutable variables, referential transparency, lambda calculus
  • client-server separation, application architecture (SPA, MVC, MVVM, routing) and their libraries/frameworks (jQuery, Backbone, Angular, Vue, React + JSX with state management Redux or MobX), build system (Webpack, Rollup, Gulp, Grunt), diagram with D3.js
  • user interface and experience design (Inkscape, GIMP, ImageMagick, Sketch), product development, design sprint, building MVP applications like catalogue, directory, forums, commerce, ereader, procurement, chat, game, simulation, productivity tools, social network
  • preprocessing of HTML (Jade, EJS, Handlebars) and CSS (Flexbox, Sass, Less, Stylus), UI libraries/frameworks (Bootstrap, Foundation, Semantic UI, Material Design)
  • data modeling and schema, query and CRUD operations, and the database with SQL (relation: MySQL, PostgreSQL, SQLite) and its ORM (Sequelize, Knex.js), also NoSQL (document: MongoDB+Mongoose, key-value store: Redis, Firebase)
  • testing (assertion, unit, integration, e2e, test double) with test framework (mocha, chai, jasmine), TDD/BDD/ATDD
  • RESTful HTTP API, request (cURL, HTTPie, Postman), authentication/authorization (basic, token/JWT, OAuth, passwordless), roles, session, polling, webhook, API design (API Blueprint, RAML, Swagger, Apiary, Mashape), 3rd party APIs, realtime with websocket/Socket.io, multimedia with WebRTC
    • API: GitHub, Facebook, Twitter, Google+, Google Maps, Mapbox, Instagram, Slack, YouTube, SoundCloud, Spotify, Wikipedia, IMDB, Zapier, Mailgun, SendGrid, Algolia, Braintree, Stripe, Twilio, Contentful, Prismic
  • deployment to server (Nginx, Apache), PaaS (Heroku, OpenShift, Firebase), VPS (DigitalOcean, Linode), cloud (Amazon Web Services, Google Cloud, Microsoft Azure)
  • system administration and networking (domain management, DNS)
  • devops to streamlining and automation (development, build, package, and distribution), continuous automated analysis/integration/deployment/delivery with SaaS (Travis, Jenkins, Codeship, Snap CI), containerization (Docker, rkt, Kubernetes), microservices (REST, gRPC)
  • apps/websites/services analytics (Segment, Google Analytics, Piwik, Mixpanel, Clicky, Heap), measurement benchmark of load speed (PageSpeed) and monitoring (New Relic)
  • mobile (Android or iOS) with React Native and Realm
  • query language for API with GraphQL and Relay
  • management with Holacracy

Programming Languages

Based on personal preferences:

  • JavaScript (ECMAScript)
    • CoffeeScript
    • TypeScript
    • Elm
    • Dart
    • PureScript
    • NativeScript
  • Go
  • Python
  • Ruby
  • Swift
  • Perl
  • PHP
    • Hack
  • Java
    • Groovy
  • Kotlin
  • Scala
  • Crystal
  • Clojure
  • C
    • C#
    • C++
  • Rust
  • Haskell
  • Erlang
    • Elixir
  • Julia
  • Nim
  • Pony
  • Racket
  • Haxe
  • F#
  • OCaml

Explore more via Programming languages Showcase on GitHub.