Lead Developer (Front End/Mobile) for the Kin Foundation

The Kin Foundation

The Kin Foundation is a Canadian nonprofit organization established for the governance of the Kin Rewards Engine and is focused on facilitating the growth of an open and decentralized ecosystem of digital services around the Kin cryptocurrency. Visit the Kin Foundation page to learn more.

The Challenge

We are looking for a skilled developer to join our decentralized team and help lead development on several key front end and mobile technologies. The goal is to leverage the increasingly decentralized development and maintenance of Kin SDKs and core capabilities.

Reporting to the Chief Technology Officer, your responsibility will be to develop and  coordinate the maintenance of several mobile and front end SDKs – currently Android, iOS, Unity. You will be a driver of change, and will coordinate external contributors via the open source community, and/or outsourced developers.

A list of our current front end and back end SDKs (and code) can be found here: Getting Started · Kin SDK Docs. Other open source SDKs are in the works as well.

 

Responsibilities:

  • Develop and coordinate maintenance of front end code bases
  • Manage a suitable bounty system / outsource for some of the code
  • Ensure that coding standards are followed and maintained (including code reviews)
  • Become the “go-to” for technical and development queries
  • Become the subject matter expert for the platforms developed
  • Liaise with the back end Lead Dev to ensure a complete package
  • Willing to learn new frameworks and technologies
  • Review/ test externally submitted code.

Requirements

  • Can architect complex mobile software systems across both Android and iOS platforms
  • Knowledge of other frameworks such as Unity, React Native, Flutter, etc
  • Strong Git experience including branching & PR workflows (e.g. git-flow)
  • Has advanced experience developing libraries for mobile app consumption
  • Knowledge with gRPC and Protobuf
  • Familiarity deploying JAR & AAR artifacts to Bintray or other maven repositories
  • High Developer Standards
    • Be able to maintain high unit test code coverage (80%+)
    • Comfortable maintaining, updating, using CI systems (e.g. Circle)
    • Always adheres to standard coding practices and can contras, communicate, and articulate differences implementations
    • Cognizant of downstream dependencies on external developers 
  • Has demonstrated ability to be self sufficient in mobile development given broad business requirements 
  • Collaborative attitude, Great communicator & problem solver
  • Familiar with Promise & Observable frameworks

Bonus experience:

  • Working on open source projects
  • Has experience working  on financial software, ideally blockchain as well
  • Working on blockchain projects is a plus

Technologies in our stack

Core Languages:

– Kotlin

– Java

– Swift

– Objective-C

Misc:

– Gradle scripting in Groovy

– Bash scripting

– Maven (Poms, gradle integration, deployments)

Common Dependencies:

– gRPC + Protobuf

– OkHttp

– Slf4j

– libSodium (specifically intimate using ed25519 cryptography)

– Familiar with Promise & Observable frameworks

– Android

– AndroidX Support Libs (AppCompat, RecyclerVIew, Material, CoordinatorLayout)

– Aware of dex limitations & multidex

– KTX

– GCP (Google Play Services)

– iOS

– Can build, maintain and ship custom Cocoapods

– UiKit UI

– Unit Testing

– JUnit 4

– Mockito

– Jacoco code coverage

– CI integration with codecov

Benefits

  • Collaborative work culture
  • Contribute to the open source community
  • Part of a high-growth project with a significant impact on the ecosystem
  • Competitive compensation, coupled with long-term incentives

Job Type: Full-time

Location: Remote (Decentralized)