technology: Mobile Software Engineer - Android

Posted: October 26, 2016

Job Purpose:

This position advances the overall mission of the American Bible Society in the Technology Solutions group by participating in software development projects for the ministry areas, partners, and internal efforts. These software development projects will include native mobile development on the Android platform.

Essential Functions

  • Participate in engineering design and implementation discussions leading to implementation definition for app enhancements and new app projects.
  • Participate in and perform defect assessment and bug fixes to existing apps
  • Perform software engineering tasks against defined projects by providing implementation for designs and specifications
  • Assist in the definition, development, and documentation of business requirements, objectives, deliverables, and specifications on a project-by-project basis in collaboration with business partners and stakeholders
  • Participate in regular Agile Scum meetings including: effort estimation, planning, daily stand-ups, retrospectives, and demos
  • Write unit tests and UI tests in a native mobile language, such as Java.
  • Follow the defined Agile and Software Development lifecycle to design, create, and deliver quality software
  • Assist the Senior Manager with tasks and duties associated to the engineering team and focused on the software development lifecycle, creation of new apps and bug fixes and enhancements of existing apps

Essential Skills/Experience/Traits

  • Fervent belief in the mission of American Bible Society
  • Passion for the Bible cause and its ability to impact lives, and the mission and core values of ABS
  • A software engineering background having exposure to and experience with various languages, design patterns, and best practices
  • Expose sure following best practices for project setup, coding standings, and style guidelines
  • Experience developing native mobile apps in either Java using the Android SDKs
  • An understanding of how to properly document code inline as well as create formal code and application documentation
  • Exposure to and experience with Agile Scrum software development methodologies and its practices
  • Experience with development languages including: JavaScript, Java, Objective-C, or Swift
  • Experience with markup languages and styling including: HTML(5), CSS, XML, and JSON
  • Exposure to server-side development languages and frameworks, including: Ruby on Rails an Node.js(JavaScript) Exposure to and experience with RESTful services, both creating and accessing as a client
  • Experience with NoSQL databases, in particular, MongoDB and relational databases including MySQL and PostGreSQL
  • Experience writing unit tests and UI tests for native mobile platforms
  • Exposure to the principals and practices of continuous integration/continuous delivery
  • 2-5 years experience with Java and Android SDKs and a willingness to learn new technologies as needed
  • Solid working knowledge of current Internet and programming technologies
  • Highly self-motivated, initiative-taker
  • Highly personable, polite, calm under pressure
  • Reliable, rigorous attention to detail and follow-through

Education and/or Training

Bachelor's Degree or equivalent experience required (Computer Science or similar degree)

Submit Resume