Skip to content

Instantly share code, notes, and snippets.

@richardimaoka
Last active Mar 13, 2019
Embed
What would you like to do?

Overview

I’m looking for Scala developer roles, where I can remotely work from Japan. If your system is mainly based on Akka, written in Scala, I could be a candidate for your team. I am familiar with Akka/Scala especially about the core behavior of Akka Actor and Akka Streams. I could help in implementating Akka-based systems efficiently, avoiding common pitfalls to cause maintenance burden.

Unfortunately it's difficult for me to move outside Japan, but in terms of timezone/work hours I am fully flexible. I can work in hours your local team members are working.

For the compensation, it would be great if you pay more than 100k USD / year.

If you are interested, please DM me via Twitter (I accept DM from anyone), or send a mail to richard.e.imaoka@gmail.com .

Other skills than Akka

  • General Scala knowledge - Decent knowledge about Scala so that I can catch up on whatever Scala technologies you use. To be honest, I am not an expert in pure functional programming (e.g.) I don’t know things like fs2, http4s, ZIO, Cats IO, etc. Still I’m familiar with Cats and Scalaz to some extent though, like Monad Transformers.
  • Web (Typescrpt, React, Firebase) - Did some personal projects (explained later). Not a React superstar myself, but I can communicate well with web developers
  • AWS - Feel somewhat comfortable with EC2, VPC, IAM, CloudFormation. I think I can contribute to streamlining development pipelines, if there is appropriate assistance from infra engineers. I know GCP a bit too.
  • Cassandra - I did day-to-day support for a system using Cassandra in Akka Persistence. For high-level concepts I learnt much from Datastax videos.
  • Elasticsearch - again not an expert but understand high-level concepts and use cases

My interests

  • Implementing stable, easy-to-maintain, and performant system using Akka-based architecture. Particular patterns of interest include Event-Sourcing, CQRS, EIP patterns
  • DevOps, AWS/GCP/Azure - Streamlining development and troubleshooting procedure especially in containerized environments. CI, log management, etc.
  • Performance analysis and benchmarking - learned a lot from Brendan Gregg’s resources, and TechEmpower framwork. Still on the way learning, and will continue to dive in Linux internals like threading and tools such as eBPF
  • Of course, a lot more! Let me know anything technically interesting!

Private work

  • Akka OSS - voluntary and occasional contributor. Made 100+ commits. Although most of the commits are about documentation, I learned internals of Akka a lot from this.

2019-03-12_21h23_38

  • Blog - Akka, Concurrency, etc - Some of my findings about akka and other technologies are posted.
  • pinvite (sorry it's in Japanese only) - an application to share your workshop promotions using Twitter OAuth 1.0. It’s based on React written in TypeScript, backed up by Firebase, and Tweets are posted via Twitter’s OAuth 1.0a. I learned some of modern practices of web development through the project, coordinating with a professional web developer who helped on this.

Work history

Web-service company - notebook management service for corporate users, May 2018 to present (less than 1 year)

resume

Responsible for the server side in Scala. The server side is fully based on Akka HTTP and written in Scala. It’s written in a traditional transaction-script style, and the main database is MySQL. ElasticSearch is used only for text search in the bodies of notebooks, while the source-of-truth data is still kept in MySQL.

Online payment service company, Jun 2017 to Apr 2018 (less than 1 year)

resume2

I wanted to turn into a professional Scala developer after contributing to Akka occasionally for about a year, so I moved to this company.

The company’s main system was build on Scala/Akka and I worked in a team responsible for the core processing of payments. In terms of projects, I was involved in few-month-worth refactoring effort for the core payment processing, and development of new payment features.

It was good experience for me working on an Event-Sourced system using Akka Persistence with Cassandra, and I learned how Event-Sourcing can help investigation of issues.

Large investment bank, Apr 2008 to Jun 2017 (9 years)

I was in multiple technology teams supporting internal trading and sales applications in Fixed Income and Derivatives area. The infrastructure heavily relied on a legacy in-house database technology and the in-house programming language dedicated for development on the database infrastructure. I mainly learnt about coordination with non-engineer people, troubleshooting in a time-pressured environment, workaround (and frequently compromises with …) of the legacy systems. Development projects ranged from single-developer work (most projects fell into this category) to company-wide projects typically due to regulation reforms in the financial industry after 2008, bankruptcy of Lehman Brothers.

@duobei
Copy link

duobei commented Mar 13, 2019

Typescrpt -> Typescript

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment