|
|
Senior Software Engineer, Android
Senior Software Engineer, Android

What You Will Do

  • Design and create software in Java for Android-based phone and tablets
  • Participate in the software design process by asking questions, documenting, giving and receiving feedback, and applying your experience to improve the quality of designs
  • Following industry best practices when implementing software
  • Using visual design, information architecture, and interaction design to assist the writing of working software
  • Checking code into version control according to company version control policy
  • Working with databases
  • Refactoring old code so it runs faster and more efficiently
  • Testing software via automated methods, including but not limited to writing and running unit tests, functional tests, integration tests, as well as testing using manual methods

Skills We’re Stoked About

  • At least 8 years of professional experience (or equivalent), including an expert level understanding of Android OS programming with Java
  • Expert level understanding of object oriented programming concepts and SOLID
  • Expert level of understanding of threading, networking, and memory management
  • Understanding of advanced software engineering techniques
  • Knowledge of multiple areas of software engineering
  • Speaking intelligently and with authority about a variety of technology topics
  • Bachelors or Masters degree in Computer Science, Engineering, or Mathematics
  • Expertise in Java and developing native Android Applications with SDK
  • Proven successful track record showing an aptitude for engineering and product sense
  • Experience with JUnit, implementing automated tests, including unit, functional, and integration tests.
  • Experience with Git, continuous integration, Jenkins, Gradle, Groovy, Maven, ProGuard, and Android builds

Bonus Skills We’re Stoked About

  • Expertise with XML, JSON and REST-based APIs
  • Audio, Photo, or Video editing and streaming
  • Knowledge of wireless connectivity technologies, including Bluetooth LE and WiFi
  • Experience integrating native modules using Android NDK
  • Experience with low-level Android device drivers and hardware bring up a plus
  • Alternate OS: Linux, iOS, OSX, Windows, RTOS
  • Languages: C#, Groovy, Objective-C, Python, C/C++
  • Knowledge of OpenGL or Vulcan
  • Security and encryption protocols such as SSL, TLS, SSH, PKI, AES
  • Strong debugging and Instruments skills
  • Experience using Scrum or other Agile processes for software development

 

Applying changes...

ThemeMonstroid

Layout type
  • Wide
    Wide
  • Boxed
    Boxed
Skins
  • Material
    Material
  • Dark
    Dark
  • Minimal
    Minimal
  • Flat
    Flat