Instructure was founded to define, develop, and deploy superior, easy-to-use software. (And that’s what we did / do / will keep on doing.) We are dedicated to the fight against iffy, mothbally, shoddy software. We make better, more usable tools for teaching and learning (you know, stuff people will actually use). A better connected and more open edtech ecosystem. And more effective ways for everyone everywhere to access education, make discoveries, share knowledge, be inspired, and do big things. We accomplish all this by giving smart, creative, passionate people opportunities to create awesome. So here’s your opportunity.
We are looking for an experienced Android developer to help improve and maintain our Canvas mobile app suite. You will work in tandem with our product and design team to build out new features for our educational apps, which are used by millions. Our Android team moves fast; we are always trying to stay up to date and try out new things. We have adopted Kotlin as our primary language of choice — a significant portion of our code base is written in it and all new features are nearly 100% Kotlin. Want to see for yourself? The apps are open source: https://github.com/instructure/instructure-android
Here's what you will be doing:
- Maintaining, improving, and developing features for our mobile app suite using Kotlin and Java
- Consuming the numerous RESTful APIs of Canvas
- Building out automated ui tests and tools using technologies such as Espresso
- Researching new technologies to leverage for app development
Here's what you will need to know/have:
- 6+ years of relevant software development experience with includes 3+ years experience in professional Android development
- Ability to work independently, collaborate on complex projects, and drive results
- Passion for Android development
- Published apps on Google Play (that real people use)
- Deep understanding of Java, Design Patterns, and Android architecture
- Experience working with RESTful APIs
- Ability and willingness to mentor and express concepts among cross functional teams clearly and succinctly
- Computer Science related degree or equivalent work experience
- Ability and desire to work in an open office environment
