Introducing GraphQL into our tech stack to be more future proof

At Article, we recently introduced GraphQL as part of the new technology stack. There are many reasons and discussions behind that decision and we think it is the right time to do so.

Old Stack

Article has always been mainly using Java for all of our applications and mostly using Vue for the frontend. There is a controller for every page and dedicated RESTful API endpoints for those pages. As time progresses and we have more engineers on board, the limitations become more obvious everyday.

It is not immediately clear what parameters and what response I will expect after calling this endpoint…


Ever wondered why your website is slow to load? Let’s figure it out and give it a push

Performance should be one of the top things any engineer should consider when pushing things to production. You can have best UI and fanciest animation in your app but if performance is bad like it takes long time to load, probably nobody would notice your killer app and that would be a shame.

In this post, let’s focus on Network. What network means here is the time it takes for the actual transfer of the files necessary to present your app. Sometimes it can be a physical obstacle like bad internet but sometimes it’s just too much stuffs being shipped…


You have been working on your beautiful website built in Vue and you think it’s time to publish it. However you feel it’s somewhat slow to load, performance suffers a bit the more code you write. Let’s see how you can optimize it.

Lazy load your routes

Unless you are making a one-page landing page, chances are you have multiple routes to other pages responsible for showing different information. Maybe it’s an e-commerce website that consists of the homepage, product browse page, product page, checkout page, etc. From performance standpoints, when the user comes to the homepage, the browser shouldn’t spend time downloading other…


With Vue 3 beta is out, its final release is just around the corner. If you are as excited as I am and want to try it out yourself, I have a Starter Project that may help. I did try to upgrade Article to Vue 3 and failed miserably as there were many loaders that needed to be upgraded as well to use the new Vue compiler.

What does it include

Vue 3

This should go without saying 😂. Vue 3 has lots of improvements over Vue 2 and also introduces many APIs that can enhance the developer’s experience.

Vue 3

Performance Improvements

The team has done tremendous…


Vue 3 is around the corner let’s visit how the newly introduced Composition API helps us.

I have recently attended Vue Conference in Toronto that included topics from Vue 3, what to expect from Vue in the future, to general E2E testing with Cypress and have better error stack trace when catching error. What caught my attention the most, and yours probably, is Vue 3 and Composition API!

Vue 3

The Vue team has done tremendous work on the next version of Vue which is expected to be released in Q1 in 2020. If you understand how hard it is to manage a codebase for an enterprise application then you would understand how difficult it is to manage…


I have worked as a software engineer for almost 4 years now and it still excites me everyday in the morning that I get to work on projects that make impacts to our customers at Article. I have learned a lot of new skills and one of the things I have learned is that making assumptions can sometimes have negative impacts on the project. The following advices are not just for developers but may also be valid for other people.

Your code will work

If you are calling an API endpoint, you can most certainly assume the data will be in this certain format…


OK it’s not really a journey but these were the steps and iterations that I have taken to get to the final product. It’s a project I have worked on recently at Article that shows a list of images pulled from social medias that includes our products. This gives people an inspiration of what the community is doing with their furnitures in their homes. People need inspiration, they need visuals of what they can do with our products and these beautiful pictures can do just that and potentially drive our conversion rates. That’s the story of this task and from…


I am not really sure how many people would like such article on different ways of adding or inserting HTML without the use of framework as many people are adopting React, Angular, Vue, or Polymer as their frontend architecture. Each of these frameworks/libraries has their own implementation for manipulating DOM and creating list in their most optimized way. However, recently I have encountered the need of doing such thing without any framework.

The task was to show product reviews after pressing a button to fetch new reviews. Since JavaScript framework was not preferred for this task as there were SEO…


There were many articles I read that kept saying one should start looking for jobs sooner rather than later in the senior year. Looking to finish my degree in August 2017, I started back in March 2017 and thought it was probably too late. Nonetheless, I polished my resume and started sending applications on Indeed, AngelList, and LinkedIn. So here, I would like to share some of the interview processes I went through with some of the companies I applied for the Front-End Developer position.

Phone Interview
Talent Acquisition team phoned me and we briefly chatted about my background and what…


As part of the capstone project I am working on towards my bachelor degree, I need to have the Nodejs server I set up on Raspberry PI to receive incoming requests from other embedded systems such as NodeMCU or ESP8266 and upload images to Firebase Storage. If you have heard or used Firebase before, you probably know that Firebase provides API for communicating with their Realtime Database, Storage, Analytics, and many other awesome features that can power up your application.

However, Firebase Storage API doesn’t work on Nodejs. After spending lots of time in researching, I realize since Firebase was…

Eric Lee

Senior Software Engineer at Article

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store