Brain Dump of my Tech Tree
Over the past 6.5 years, I have been luck enough to work on various projects using a lot of modern technology, here I want to take a step back, dump all the knowledge I have learnt, and see what is the next adventure for me.
Programming Languages: C/C++, Golang, python, javascript
Databases: Mysql, maria DB, time series DB (influxDb), noSql DB (Google Datastore, MondoDb)
I even wrote my own DB: DatabaseBackendEngine
Distributed System: Implemented Raft (KVRaftDB). Understand CAP theorem. Distributed tracing, distributed transaction, serialization, 2 phase commit, master/slave replication, DB replication, DB partition, Sharding, Load Balancing.
Cache: Redis. Cache methods: lazy write, write through, read through.
Lock: distributed locks, semaphore, mutex
Briefly touched Frontend: Vue.js, Backbone.js, html/css
Testing: unittest with python, stress testing for large scaleable applications
Monitoring: graphite, grafana, prometheus, datadog. Use statsDB to send data. Can also use pub/sub system to fetch from datasource.
Leadership: mentoring junior engineer, code reviews, design reviews.
Interests: System design, Architectural design, Distributed system
No interest: Frontend, code monkey, fix other people’s bug from daily duty.
I have very strong will, and love all things in distributed system. I never settle down and always challenge myself to a different level.
