My Portfolio

Sentences about me:

As a mobile software developer, I have 11 years of experience and am competent in Multi-Threading Programming in Swift(ObjC) and the expert knowledge of Dispatch (GCD) & Combine, SwiftUI having a proven track record on App Store:  2 games, 1 utility, 1 business app.

Because I have multiple majors: chemistry, mathematics, computer science, I am often misunderstood as not being a specialist in programming or another specific area of programming like crypto or AI, but after six months or a year, I used to be recognized as the best software engineer or researcher in the company. The reason is that I love more the work I’m doing, and more focused on the given work, more cooperative, and follow faithfully the rule I should do than others do.
If the company is smart and advanced enough to find the gem hidden in a haystack, I’m sure that it will pick me up.

My Portfolio: games, iOS Apps

– Birdie’s Dream, Beta-Version Gameplay Trailer

Birdie's Dream, An Adventure Game, Gameplay Trailer
Watch this video on YouTube.

Congratulate! This is NOT an ordinary adventure that you’ve ever played before.

Role-Playing? Adventure? Puzzle?

You do NOT need to follow A PREDEFINED STORY to play!!!!!

I spent more than 5 years making this game: 1 year of experimenting, 3 years of design, 2 years 7 months programming in Swift.

It is adventure + puzzle + role-playing.

You evade, scare off, punch away A.I. monsters in a vast space of the unknown world as you find the puzzle entities and solving their puzzles.
Upon successful solving the puzzle, you’ll regenerate health and gain a new ability and control button, depending on the character of the puzzle entity in the game.

– The Developer Story:

The game is a unique adventure with role-playing plus puzzles: it does not require a predefined order of solving puzzles to finish the level. Because I made the rules of the game system, monsters, puzzle entities in the rule-based system of GameplayKit. And each puzzle has its entity as well. And I hate to wholly follow predefined procedures which are common in role-playing games or adventures. If anyone merely follows a predefined procedure of a role-playing game, the game can not amuse the person beyond what a book can provide. I think that if it is a role-playing game, it should be more flexible and dynamic in the story than a book should be. Furthermore, it is also educational. In the game, every time the gamer finishes each level, the person will learn something important to his life.  I don’t like to make a game for entertainment only but also education.

6. My GitHub

All the important projects are either private or local. And the project in public is usually for testing new features of SwiftUI2.0/3.0 or Combine. (MVVM principled tests, Web endpoint accessing testing apps can be seen)

CRDT or Conflict-free Replicated Data Type in Swift 5.5:

Convergent and Commutative Replicated Data Types or Conflict-free replicated data type

% The reference: the link

SwiftUI and MVVM: a simple project that sneak-peaks my skills, can be accessed by clicking the left, underlined in BLUE text.

However, those projects with Combine and URLSesssion and Vapor (through REST or GraphQL) are still private.

– My Dev Log, Making The Game in Swift, Birdie’s Dream

My Dev Log, Making The Game in Swift, Birdie's Dream
Watch this video on YouTube.

– Technologies employed in the game.

9-1. . Dispatch (GCD): a deep understanding of ‘framework Dispatch’ as well: the game contains 

  1. 94 dispatch serial queues and 7 dispatch target queues.  
  2. Plus none of the memory leakages which is common to ill-designed threading codes
  3. Plus none of the data race issues and removed the possible race conditions.

9-2. Rule System (GKRuleSystem) with NSPredicate.

9-3. Decision Tree (GKDecisionTree).

9-4. Path Finding Component (GKObstacleGraph + GKMeshGraph).

9-5. Agent (GKAgent).

Related Readings: