TERMS OF REFERENCE

 

Job Title:                              Junior Software Engineer

Reports to:                           Technology Coordinator

Classification:                      Full-Time, [xx], Salaried

 

 

Position Summary: This position is responsible for the development of new systems, maintenance of existing systems and servers as well as assisting with all functions of software coding and design, with the primary focus being to learn the codebase, gather user data, and provide assistance to senior developers, as well as provide technical support as needed in collaboration with other developers, consultants, coordinators, and department staff members.

 

Essential Duties and Responsibilities:

·         Represent Shaqodoon’s Technology Unit by providing support and guidance to Shaqodoon’s staff members, partners, as well as potential clients when required.

·         Continuously Innovate and advice organization decision makers on new technology-driven services.

·         Collaborate with senior developers, systems analysts, coordinators, program officers, and others to create systems and collect data on project constraints, features, performance requirements, and interfaces.

·         Assisting senior developers with all aspects of software design and coding.

·         Attend meetings regularly.

·         Weekly monitoring the technical performance of internal systems.

·         Promptly respond to requests from the development and support teams.

·         Weekly, quarterly, and annual activity and work order planning

·         Provide monthly reports on a timely manner.

·         Perform system upgrades to fix system limitations to make it easier to adapt to new technology and boost overall performance.

·         Work closely with the technical teams in financial institutions on the integration of both national and international payment gateways

·         Analyze user needs and software requirements to establish design feasibility while keeping time and resource limitations in mind.

·         Enhancing applications through the identification of areas for improvement, the formulation of recommendations, and the design and implementation of systems.

·         Produce very detailed technical documentation for deployed services.

·         Where appropriate, study and apply new technologies.

·         Upkeep and improvement of current codebases, as well as code change peer review.

·         Provide constant technical support to ensure system uptime.

·         Create, build, and alter software systems using scientific analysis and/or mathematical models to anticipate and measure the outcomes and repercussions of such designs.

·         Create and manage software testing, validation methods, and documentation.

·         Establish system performance targets.

·         Provide system trainings after system development or upgrade performed.

·         Setup, configure and maintain physical and cloud servers.

 

Qualifications: To perform this job successfully, an individual must be able to perform each essential duty. The requirements listed below are representative of the knowledge, skill, and/or ability required.

 

Education/Experience: The ideal candidate will offer:

·         Degree in computer science or 5 years of equivalent experience.

·         Proven working experience as a Junior Software Developer or relevant experience for at least 5 years.

·         Hands-on experience working with technologies like, but not limited to, C#, PHP, JavaScript, REST API, Flutter, asterisk, My SQL, Microsoft ASP.NET MVC, Linux/unix.

·         Experience with building APIs and services using REST, SOAP, etc.

·         Experience with test-driven development and automated testing frameworks.

·         Experience with Agile development methodologies.

 

Knowledge, Skills, and Abilities:

  • Capable of delivering on multiple competing priorities with little supervision.

  • Excellent verbal and written communication skills.

  • Strong problem-solving abilities, as well as oral and written communication abilities.

  • Understand computer architecture, operating systems, and data structures thoroughly.

  • The ability to thrive in a fast-paced, dynamic setting.

  • Capability to convert requirements into design concepts and entity relationship diagrams (ERDs)

  • Troubleshooting and debugging on a timely manner.

  • Capability to manage and deliver complex software systems

  • The ability to manage numerous projects simultaneously while fulfilling deadlines

 

Work Environment:

This is a high growth, fast paced small organization. The ability to be productive and successful in an intense work environment is critical.

 

The above job description is not intended to be an all-inclusive list of duties and standards of the position. Incumbents will follow any other instructions, and perform any other related duties, as assigned by their supervisor.

Interested applicants should submit a cover letter and updated CV

on Saturday , February 4 st , 2023, via

this email address: jobs@shaqodoon.org.