Masaya SUZUKI (draftcode)

Software Engineer, interested in:

Work Experience

COOKPAD Inc. (Software Engineer, Intern and Part-time, May 2013 - March 2014)

RRRSpec: Distributed test execution service

Design and implement a distributed test execution service. It can tolerate machine failures and process failures.

Ruby
AWS
Distributed Systems

Google Japan Inc. (Software Engineer, Intern, Summer 2012)

Machine translation

Conduct experiments.

C++
MapReduce

Tomonokai Corporation (Software Engineer, Part-time, November 2009 - March 2014)

Internal back-office systems

Discover requirements, design and develop systems.

Python
C
Alloy
VBScript
COM
Distributed Systems

Humming Heads Inc. (Software Engineer, Part-time, July 2008 - October 2010)

Computer supervisory system

Fix bugs and implement a new feature towards over a gigabyte of source code. C++.

C++
Win32API
COM
Binary

Job controller of a distributed system

Write an initial implementation.

VBScript
C++
Distributed Systems

Activities

RRRSpec: Distributed test execution service (2013-2014)

Sandal: Fault aware modeling language (2013-2014)

Design and implement a modeling language that is aware about faults. It can effectively check the fault tolerance of systems like RRRSpec. Implemented in Go.

Develop an Android Application (Team leader, April 2012 - December 2012)

Lead a team of 7 and develop an application. Apply some best practices in Agile.

ACM/ICPC (Team haskell-lover, 2011-2012)

Got 7th in Tokyo Asia regional, 4th in Kaohsiung Asia regional, and honorable mention in World Finals.

Meta-circular Scheme Interpreter

Develop a Scheme interpreter in Scheme. Implement a subset of R5RS and partial continuation.

MIPS Assembler

Develop a MIPS assembler run on the embedded system called MieruPC. It can compile sl program.

Education

MS Computer Science Tokyo Institute of Technology (March 2014)

Concentration: Model checking and Fault tolerance. Takuo Watanabe Lab.

Full-Automatic Exhaustive Fault-Injection on Software Models of Message-Passing Systems

Fault tolerance of distributed systems can be effectively verified by model checking and fault injection, but its process is highly error-prone. I proposed a way to solve this problem by adding a language support to modeling languages, which is a common approach in programming languages.

BS Computer Science Tokyo Institute of Technology (March 2012)

Concentration: Context-oriented programming. Takuo Watanabe Lab.

An Implementation Method of Context-Oriented Programming in Objective-C

Context-oriented programming is a programming method that enables us to define behaviors that depend on the program's execution context. I proposed an implementation method of Context-oriented programming in Objective-C.

Languages, Skills and Technologies

Others

You can see the books I read here: 読書メーター