Job Title: Mid-Level Software Developer, Level II
Field / Region: Kenya
Location: Nairobi, Kenya
Reports To: Senior Software Developer
Values, Vision, and Purpose
At Food for the Hungry, we operate under a set of guiding principles we call “The Heartbeat.” This includes our Values, Vision, and Purpose, which serve as the explanation of who we are and how we work as an organization. Together we follow God’s call responding to human suffering and graduating communities from extreme poverty.
As a member of Food for the Hungry’s Information Technology team, the Mid-Level Software Developer Level II is responsible for working towards the delivery of reliable software and writing code that adheres to industry best practices and FH programming policies. This position is expected to collaborate with co-workers and FH product owners as required to ensure needs are met and successfully deliver all assigned projects. The Mid-Level Software Developer, Level II will also provide support for key business applications. This is a critical role in contributing to the design, implementation and support of in-house and off-the-shelf solutions that support the business operation worldwide. This includes, but is not limited to data collection, metrics and reporting, website development, mobile apps, database and product integrations.
A Mid-Level Software Developer, Level II not only understands one or more languages to a significant depth, but can begin to conceptualize architectural patterns that make up good software design. This deeper knowledge allows this position to take on leadership in several areas of code improvement and refactoring. It is expected that the person in this position will take on a more active role in code review and mentoring of more junior developers, demonstrating specific areas where time-trusted software development standards can be applied to current problems.
*Please note: this job description is not designed to cover or contain a comprehensive listing of activities, duties, or responsibilities that are required of the employee for this job. Duties, responsibilities, and activities may change at any time with or without notice.
Key Result #1 – Software Development: Provide expertise and mentoring in the area of code development (85%).
Key Result #2 – Application Support: Provide support for key business applications (15%).
Qualifications: To perform this job successfully, an individual must be able to perform each essential duty/function satisfactorily. The requirements listed below are representative of the knowledge, skill, and/or ability required. Reasonable accommodations may be made to enable individuals with disabilities to perform the essential functions.
Vibrant personal relationship with Jesus Christ and Christian commitment to serving the poor and in full agreement with FH’s Christian foundation and beliefs as expressed in The Heartbeat: our Values, Vision, and Purpose;
Excellent people skills including warmth and sensitivity, conversational, able to relate to and effectively communicate with people from different cultures (at various levels within the organization);
High integrity and a strong sense of professional ethics;
Able to self-manage a diverse and dynamic set of responsibilities, proactively solve problems and / or suggest viable solutions while advancing goals and objectives;
Broad background in information technology, databases, software development, security, and related concepts;
Able to teach and mentor other programmers, drawing from a strong depth of knowledge in software development best practices.
Working experience with automated testing tools such as PHPUnit, Jasmine, Karma, Protractor, Selenium or similar;
Knowledge of project management tools and processes such as Scrum or other agile methodologies;
Ability to design and develop using Object Oriented design principles and software design patterns to attain high reusability and maintainability;
Must have strong debugging and troubleshooting skills;
Must be able to work collaboratively with a distributed team;
Excellent organizational skills; ability to plan and coordinate work, ensure the efficient flow of projects and processes;
Direct experience designing and developing software for a real time system;
Flexible and willing to accept a change in priorities as necessary;
Strong written and verbal communication skills;
Good conflict resolution skills;
Demonstrated computer operating skills, including proficiency in Microsoft Office products, Google platform, and virtual technologies such as Skype and / or GoToMeeting;
Practical working experience with a variety of business information applications, including collaboration tools, accounting and finance, communications, and enterprise level databases;
Medical fitness to live and travel in rural and urban areas with extreme conditions and limited medical support;
Ability to travel up to 10% of time per year in the US and internationally, to insecure countries or locations.
Education and Experience: Bachelor’s degree from four-year college or university in a related field; three years related experience; or equivalent combination of education and experience.
Supervisor Responsibilities: This position does not have direct supervisory responsibilities. However, includes participation in interviewing, hiring, and training employees; planning, assigning, and directing work within assigned projects as required.
Language: Proficiency in spoken and written English. Ability to read, analyze, and interpret general business periodicals, professional journals, technical procedures, or government regulations. Ability to write reports, business correspondence, and procedure manuals. Ability to effectively present information and respond to questions from groups of managers, clients, customers, and the general public.