Full-stack Engineer (React/Redux/Ruby on Rails/GraphQL)2018 - 2019Vydia, Inc. (via Toptal)
Technologies: Ruby, GraphQL, React, React Apollo, PostgreSQL, Material-UI
- Contributed to a Ruby/GraphQL back-end API by implementing new objects/fields/interfaces/queries/mutations, updating the existing ones, and always writing tests.
- Heavily supported a React web app's front end; created/updated many reusable components and screens, integrated GraphQL API using React Apollo in most cases, and wrote front-end tests for possible user workflow scenarios as well as capturing snapshots.
- Led some non-trivial tasks such as React version upgrade (16.8.x to 16.9.0) and Material-UI version upgrade (3.x to 4.x).
- Aggressively gave some suggestions on improving code quality and took actual refactoring tasks for approved ones. (e.g., slimming docker files, introducing React hooks API as soon as it became available on the stable release, discovering useful libsraries/tips that could potentially help us a lot).
- Worked on two-week-long sprint cycles with daily stand-ups.
Full-stack Web Developer2018 - 2018Connected in Education, Ltd. (via Toptal)
- Gained my first taste of using ActionCable in a real-world project, for a real-time chat and instant notifications.
- Built a feature with a data feed from Elasticsearch.
- Developed another form of client-side rendering using JST and Jade.
- Used Stimulus.js right after Basecamp folks released the first stable version (1.0).
Full-stack Web Developer2017 - 2018Stacked Sports
Technologies: Ruby on Rails, React, Redux, React Native, Intercom, Recharts, AWS ElasticBeanstalk
- Heavily refactored both the RoR back-end API and React front-end in order to improve code quality and performance.
- Became very familiar with creating/consuming API based on JSON API specs.
- Integrated an intercom service.
- Built a React Native mobile app using Expo.
Co-founder2017 - 2018knocknock-team
Technologies: Ruby on Rails, React, Redux, Bootstrap 4, Webpack, PostCSS
- Built a unique, simple, and secure online password manager solution; Artificis.github.io/project-cic.
- Created a Ruby gem for simple deployment of Ruby on Rails applications; Github.com/artificis/dploy-rails.
- Designed knocknock-team's default React app starter template; Github.com/artificis/react-app-suspenders.
- Developed an authorization utility for Redux, inspired by CanCanCan gem for Ruby on Rails; Github.com/jconsigliere/redux-cancan.
Freelance Ruby on Rails Back-end Developer2017 - 2017Rioja (via Toptal)
Technologies: Ruby on Rails, PostgreSQL, RSpec, Pundit
- Identified solutions to given feature specs.
- Implemented advanced features to event booking platform, for both management and customer side. The tests were written in RSpec and the authorization was written with Pundit.
- Learned about the usage of VCR cassettes whilst running RSpec tests.
Software Engineer2016 - 2017RYNAN Technologies Viet Nam
Technologies: Ruby on Rails, React, Redux
- Accumulated experience in building a React SPA for custom in-house financial management needs.
- Polished my coding skills using Git as a part of my daily life.
- Improved my skills in splitting code bases, assigning sub tasks, and handling merge conflicts through collaboration via Git.
Freelance Web Developer2011 - 2014inboxGroup | inboxGroup.co.uk
- Contributed to a number of different kinds of projects as a freelancer.
- Developed mainly with PHP (WordPress, Joomla, CakePHP) during those days along with jQuery.
- Developed a major understanding of how web programming works—became familiar with how to use Apache, phpMyAdmin, cPanel, WHM, GoDaddy hosting services, and more.