15730465_1316073261797120_184262579558809600_n.jpg

Stan Lo(st0012

I'm a Ruby/Rails developer who loves to contribute open source projects. I have contributed some popular gems like Rails, formtastic or html-pipeline...etc. I am also the creator of goby language, which is a Ruby-like object-oriented language written in Go.

Programming is not just a skill for me, it's also my dominant interest. And my dream is to work with a bunch of smart people on a product I'll be proud with.

[email protected]
Taipei, Taiwan



Experience

Senior Software Engineer at ticketsolve, November 2017 - Present

My main task is to maintain and develop APIs for our Rails application. This sounds simple but our codebase is 10 years old and it's a large codebase, so sometimes it's quite challenging. Currently, my biggest contribution is upgrading the legacy codebase from Rails 4.2 to 5.2 and without any production issue.
Aside from the application development, I am also responsible for some system admin tasks. Like using terraform to build up our infrastructure, provision instances with Chef and solve any production issue we got. 


Contractor, 1 September 2017 - 31 October 2017

My client is a Singapore company called Perx. I work as a Rails developer with other three Taiwanese and the customer's tech team. My primary job is refactor and add specs to the application and give advices to the client.

Full time language designer, 26 May 2017 - 31 August 2017

In these three months I focused on my Goby language project in full-time. I worked with contributors from all over the world. There were contributors from Poland, Japan, Germany and many other countries. And we finished, released Goby's first official version together.

We all worked remotely and crossed different timezone. This is a very valuable experience for me, and also proved that I can work remotely in a distributed team without communication/time difference barrier.

Full time language designer, 26 May 2017 - 31 August 2017

In these three months I focused on my Goby language project in full-time. I worked with contributors from all over the world. There were contributors from Poland, Japan, Germany and many other countries. And we finished, released Goby's first official version together.

We all worked remotely and crossed different timezone. This is a very valuable experience for me, and also proved that I can work remotely in a distributed team without communication/time difference barrier.

Rails developer at iCook, 15 Sep 2015 - 26 May 2017

In iCook, I am responsible for:

- Maintaining a high traffic website (which's Alexa global rank is about 2000). For example: Improving performance according to skylight.io's report, upgrading Rails to 5.0...etc.

- Design and develop new features for a large Rails app. For example: VIP subscription system which integrates with local payment gateway, Google Play subscription and App Store subscription.

Rails developer at Backer-Founder, 01 Sep 2014 - 14 Sep 2015

In Backer-Founder, I was responsible for two projects

- Backme: A service that provides cashflow integration and aim at helping user to host their own crowdfunding projects.

- CrowdTrail: An internal tracking tool that crawls and visualize major crowdfunding platform's project information.

Skills


Ruby

I think I already have certain experiences in Ruby and have contributed over 20 Ruby gems. Besides writing Ruby, I also understand how it works (mostly), goby's VM is basically a simplified YARV.


Rails

Despite of writing Rails app during my work, I am also quite active in Rails community. I've implemented a few features in Rails, like ActionMailer's fragment cache in Rails 5.0. And occasionally discussing in Rails issues. 


AWS

I can say that I'm familiar with ECS because I was in charge of dockerizing all of our Rails apps and migrating them from OpsWorks to ECS. I also know how to provision instances with OpsWorks or setup ELB...etc.



Testing Frameworks

I use RSpec everyday at work and when writing my own gems. I also learned how to use minitest when contributing Rails and other projects that don't use RSpec.


Go

I write Goby in Go so I think I can say that I know how to write Go. But I have to admit I haven't wrote any production project's in Go. I just use it very frequently after my work.



Projects


Zubot

It's a experimental but functional project that helps you precompile every view templates at Rails boot time. The reason and benefit can be found in here. I uses several tricky meta-programming skill to achieve this goal.


SafeFinder

SafeFinder lets you define a model's Null Object through a simple DSL, and returns that when you don't find an instance of that model.


Goby

(previous named Rooby)

An object oriented language inspired by Ruby and written in Golang, which aims at developing microservice efficiently.

Speaking Experiences

Lightning Talk Speaker - RubyConf Taiwan 2015

The talk's topic is "Why should you write a gem for practicing?", it's about my learning experience of writing a Ruby gem. Here's the slide.

Speaker - Taipei.rb (local meetup)

I talked about how Rails renders your app's view templates. Here's the slide.

Speaker - RubyKaigi 2017

I shared about my language Goby's feature with the audiences, and explained some technical challenges I got when implementing it. Here's the slide.

Speaker - ElixirRubyConf 2018

This talk includes my experience about writing my own programming language, the visions and plans for Goby and some feature proposal.

Speaker - RubyKaigi 2018

This talk is an improved version of the one in ElixirRubyConf 2018