Nick Yang, Developer in Toronto, ON, Canada
Nick is available for hire
Hire Nick

Nick Yang

Verified Expert  in Engineering

Full-stack Developer

Location
Toronto, ON, Canada
Toptal Member Since
June 10, 2022

Nick has 10+ years of experience in Ruby on Rails, working with REST APIs, architecting apps, setting up AWS infrastructures, and building front ends with JavaScript and jQuery. With a tech stack that includes Docker, Cloud9, CodePipeline, Elastic Beanstalk, PostgreSQL, MySQL, Redis, Neo4j, and more, Nick can enforce good programming practices and raise an impact on his work. He is a strong communicator who has leadership experience with developers and UX teams designing and shipping products.

Portfolio

CastleBird Inc
Ruby on Rails API, Ruby on Rails (RoR), JSON, Docker, Amazon Web Services (AWS)...
Algorithm Trading Bot
Ruby on Rails (RoR), REST, APIs, Markets, Crypto, WebSockets...
CastleBird Inc
Ruby on Rails (RoR), APIs, REST, AWS Lambda...

Experience

Availability

Part-time

Preferred Environment

Ruby on Rails (RoR), Amazon Web Services (AWS), APIs

The most amazing...

...app I've written monitors and trades in stock and crypto markets autonomously. It syncs hundreds of data, runs the analysis, and executes trades via the API.

Work Experience

Co-founder | Full-stack Developer

2020 - 2022
CastleBird Inc
  • Programmed a back-end API Ruby on Rails app to serve the front-end web app and Flutter mobile app requests. The communication is done via JSON, serializing database records as JSON objects.
  • Dockerized the front- and back-end Ruby on Rails app via Docker and set up scalable AWS server clusters using AWS Elastic Container Service.
  • Implemented OAuth 2 authentication flow, including access-token and refresh-token, for API Authentication.
  • Led a team to develop the iOS and Android apps on the Google Flutter platform.
  • Drove the UI/UX design to ensure a smooth flow from user registration to payment.
Technologies: Ruby on Rails API, Ruby on Rails (RoR), JSON, Docker, Amazon Web Services (AWS), Amazon Elastic Container Service (Amazon ECS), OAuth 2, App UI, User Experience (UX), App UX, Web UX, Agile Leadership, Team Leadership, Product Leadership, Leadership, Amazon RDS, PostgreSQL, Full-stack

Full-stack Developer

2019 - 2020
Algorithm Trading Bot
  • Developed a program in Ruby on Rails to monitor stock and crypto-currency markets at time intervals ranging from five minutes to one day.
  • Enabled the app to make the buy and sell decisions autonomously on its own analysis and execute those trading decisions via both REST and WebSocket APIs to major cryptocurrency and stock trading platforms.
  • Empowered the app to monitor over 100 symbols at a time. It syncs over 100 new data points every five minutes, combines them with the old data, makes calculations, and executes trading decisions within the given 5-minute timeframe.
  • Set up the entire AWS server infrastructure to enable mass data processing and a fault-tolerant redundant market monitoring system.
  • Experimented with over 1000 technical analysis methods using Pine Script and TradingView platforms and ran more than 4000 different back-testing algorithms on past market data.
Technologies: Ruby on Rails (RoR), REST, APIs, Markets, Crypto, WebSockets, Amazon Web Services (AWS), Amazon Simple Queue Service (SQS), AWS Lambda, Amazon Elastic Container Service (Amazon ECS), Docker, AWS Fargate, PostgreSQL, Amazon RDS

Co-founder | Full-stack Developer

2017 - 2020
CastleBird Inc
  • Broke up a monolithic Ruby on Rails app into front-end, back-end, mailing, and other microservice apps running as separate services on AWS.
  • Used AWS Lambda to set up cron triggers to insert job messages periodically into AWS Simple Queue Service (SQS) and connect the Ruby on Rails app as job workers.
  • Developed the front-end UI using HTML, CSS, JavaScript, jQuery, and Ajax form submissions.
  • Implemented growth hacking techniques using Selenium browser automation and programmed web scraping automation using an automated version of Chrome to scrape data from HTML source code of multiple website sources.
  • Programmed payment API integration with Stripe API, TransferWise API, and other payment processors and learned about payment card industry (PCI) compliance and how to tokenize credit card data so it never touches our servers.
  • Created a double-entry accounting module with debit and credit to ensure accurate accounting of payment and payouts transactions for each customer.
  • Learned programming techniques on how to deal with financial data, such as never using floating-point numbers to do calculations, always storing money as BigDecimal or integer up to six decimal accuracy, and more.
  • Developed a booking engine for rental bookings working with internationalization on the Ruby on Rails app, namely, the international translation of timezones, dates, times, and duration to perform DateTime calculations across different time zones.
  • Integrated the mailing Ruby on Rails service app with SendGrid’s API to track mail and store and sync email templates so that designers can edit the transactional emails directly via SendGrid’s marketing template editor.
Technologies: Ruby on Rails (RoR), APIs, REST, AWS Lambda, Amazon Elastic Container Service (Amazon ECS), Amazon Simple Queue Service (SQS), Redis, Selenium, Web Scraping, JavaScript, HTML, CSS, Amazon ElastiCache, AWS Elastic Beanstalk, SendGrid API, Twilio API, Stripe API, Architecture, Ruby

Founder | Full-stack Developer

2016 - 2017
RelayBird
  • Launched an online software as a service (SaaS) product that enables companies to make automated newsletters by curating existing articles around the web.
  • Built the SaaS product from the ground up using Ruby on Rails.
  • Developed a content curation app that searches articles from around the web, syncs content via RSS and Atom, processes the HTML and XML files, and extracts and summarizes important content pieces.
  • Implemented the front-end app with JavaScript, jQuery, and Ajax, containing an in-place editing UI for newsletter editing.
  • Enabled the back-end apps to save and retrieve newsletters, user auth, payment, mail scheduling, content curation, etc.
  • Hosted the apps on AWS as different services within the same AWS Virtual Private Cloud (VPC), used AWS RDS for the PostgreSQL database, and set up a load balancer on the front-end public subnet to load balance web requests to front-end web services.
  • Used AWS Lambda to set up cron triggers to insert job messages periodically into AWS Simple Queue Service (SQS) and connect the Ruby on Rails app as job workers.
Technologies: Ruby on Rails (RoR), APIs, jQuery, Ajax, Web Scraping, JavaScript, Amazon Simple Queue Service (SQS), Amazon Web Services (AWS), AWS Elastic Beanstalk, CTO, Python

IT Consultant

2012 - 2016
Panamerican World
  • Managed a development team in Panama to develop a full-scale content management system (CMS) site built on Drupal as the chief tech advisor for the client.
  • Built a website that hosts over 1000+ journalism content pieces, with a mix of articles, photos, and video-based multi-media content.
  • Collaborated with the client, the chief editor, and a team from multiple Latin American cultures to implement the client’s vision.
  • Drafted out technical requirements, adopted a hands-on approach by mastering the Drupal CMS platform, helped clients overcome complex technical challenges, and significantly improved the original website.
Technologies: Drupal, IT Project Management, Web Project Management, PHP, Technical Requirements, Functional Requirements, Requirements Analysis, Business Requirements, Product Management

Algorithm Trading Bot

Developed a program in Ruby on Rails to monitor stock and crypto-currency markets at 5-min, 15-min,30-min, 45-min, 1-hour, 2-hour, 4-hour, and 1-day intervals.

The app can make buy and sell decisions autonomously based on its own analysis and execute those trading decisions via both REST and WebSocket APIs to the primary cryptocurrency and stock trading platforms.

It is capable of monitoring over 100 symbols at a time. Each character under a 5-minute interval had over 105,120 data points per year. I programmed the app to sync over 100 new data points every five minutes, combine with the old data to make past data calculations, and execute trading decisions, all within the given 5-minute timeframe.

Finally, I set up an entire AWS server infrastructure to enable mass data processing and a fault-tolerant redundant market monitoring system, experimented with over 1000 technical analysis methods using PineScript and TradingView platforms, and ran more than 4000 different back-testing algorithms on past market data.

Languages

HTML, CSS, Ruby, JavaScript, PHP, PHP 5, Python, Java, C++

Frameworks

Ruby on Rails (RoR), Selenium, CodeIgniter, Symfony, OAuth 2, Laravel, Django

Platforms

Amazon Web Services (AWS), Docker, AWS Elastic Beanstalk, AWS Lambda, Amazon EC2, Drupal

Storage

JSON, PostgreSQL, Redis, MySQL, Redshift, Amazon S3 (AWS S3)

Other

APIs, Payment APIs, Architecture, CTO, AWS CodePipeline, Amazon RDS, Security Groups, Ajax, Web Scraping, Business, Business Cases, Finance, Marketing Mix, Algorithms, Data Structures, Operating Systems, App UI, User Experience (UX), App UX, Web UX, Agile Leadership, Team Leadership, Product Leadership, Leadership, Markets, Crypto, WebSockets, IT Project Management, Web Project Management, Technical Requirements, Functional Requirements, Business Requirements, Product Management, Full-stack

Libraries/APIs

jQuery, Ruby on Rails API, SendGrid API, Twilio API, Stripe API

Tools

Amazon Elastic Container Service (Amazon ECS), AWS CodeBuild, Amazon Virtual Private Cloud (VPC), Amazon Simple Queue Service (SQS), Terraform, AWS Fargate, Amazon ElastiCache

Paradigms

Management, REST, Requirements Analysis

2010 - 2011

Honors Bachelor Degree in Business Administration

Ivey Business School - London, Canada

2007 - 2010

Honors Bachelor Degree Specializing in Computer Science

Western University - London, Canada

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring