Senior Software Development Specialist
- The Directorate General of Treasury is working under Ministry of Finance (MoF) with a total of around 300 in HQ and line ministries employees. Responsible for managing the treasury bank accounts and payment procedures, Public sector PEM and Treasury (Payment processing), Contracts Master Data Management and payments, Vendors Master Data Management (public and private vendors), Payroll and salaries payments, Budget Execution, distribution and control at all levels and Revenue collection from all sources (taxes and non-taxes) for the Government of Afghanistan (GoA) in accordance with the Public Finance and Expenditure Management Law (PFEML). Treasury’s responsibilities are divided across a Director General, 5 Directorates and 11 Sub Directorates.
- After coming Islamic Emirate of Afghanistan (IEA) to the authority, treasury has made important progress in implementing financial system cross the line ministries and provinces, streamlining vendor’s payment processes, simplifying contract management lifecycle, budget execution, distribution and control and payment staff salaries punctually. These efforts include a wide range of reforms and structural changes within the treasury.
- AFMIS is currently using Freebalance’s Financial Management System (FMIS) as a core system for the treasury management and operations, and some other systems for daily operations cross the GoA.
- AFMIS needs technical support in the development of replacement for currently used FMIS as part the strategic plan for the modernization of the financial system in technology and functionalities by aiding in understanding the current financial system as well as the development of a sustainable software system for the modernization of the systems based on open source technologies as per the Digital Foundation Strategy for Afghanistan. The senior software development specialist will collect enough details about the requirements to start the process of developing a set of business workflows and technical specifications.
Role and Responsibilities:
The authorities concerned will carry out the following tasks and activities but not necessarily restricted to those:
- Knowledge of restful API development in .net core/MVC using Richardson Maturity Model (Rest API model).
- Study, understand and analyze complex software application systems code written in either Java or .net (C#),
- Understanding of Git and GitHub version control feature and function within vscode.
- Develop, debug and test new web applications considering performance, processes and productivity and either PostgreSQL or Microsoft SQL server as DBMS.
- Being a part of the change management (release) process to develop and implement new applications using .net core Entity Framework (EF) Core, .net restful API development and updating existing applications.
- Knowledge of open source reporting tools such as Jasper reports, crystal report and RDLC.
- Ensuring high availability of developed software systems and databases.
- Participating in software testing process such unit testing, automated functional testing and integration testing.
- Make recommendations to automate and simplify business processes and building new application for increasing productivity and efficiency.
- Review completed software development tasks to ascertain compliance with international standards.
- Perform risk assessments and observe risk mitigation/ control strategies while developing software systems.
- Work alongside other departments to achieve Treasury’s goals and visions.
- Perform any other duties related to the role assigned by the management.
- Write, revise and maintain software technical documentation operations documentation and user guides in accordance with standards.
- Work under the supervision of the sub-directorate and provide regular tasks status update, challenges and reports to the management as per SLA.
The main deliverables include but not limited to:
- Deliver detailed well-developed documents (FDD/SRS, TDD, etc), applications source codes and any other official resources for the treasury department systems as per SLA, based on functional specifications, in accordance with the Digital Foundation Strategy of Afghanistan.
- Deliver a detailed list of customizations in the current system for enhancing the performance and business requirements of the day.
- Deliver a detailed list of audit policies, maintenance plan and checklists for both new and existing software systems.
- Provide support the AFMIS DBA team on database performance tuning and analysis plan with best practices for the new and existing systems.
- Integrates treasury department systems with other existing systems such as SIGTAS, ASYCUDA, and DAB, ACBR, NPA and other enterprise applications exists in MoF using restful API in .net core/MVC using Richardson Maturity Model (Rest API model).
- Develop treasury department systems and dashboards using open source technologies (Rest API, .net core, React, and SQL server using clean architecture and clean coding).
Qualified applicants are encouraged to submit their CVs, no later than 29 Nov. 2023.
Please clearly indicate “position name & vacancy number” in the subject line of email.
Do not attach your education and working experience documents.
Eligibility and Skill Sets:
The candidate qualification is:
- Bachelor’s or master degree in computer science, information technology and other related fields.
- 5 years for master and 7 years for bachelor of computer since graduates, information technology and other related fields with experience in the enterprise level software development.
- Solid understanding and proven experience of coding regarding enterprise application projects using object oriented paradigm with the help of Microsoft .net core and Entity framework (EF) Core. The design pattern for code management will be used either multi-layer architecture or clean architecture/ clean coding by Robert C Martin.
- Understanding of implementing API gateways.
- Understanding and proven experience in design patterns specifically repository patterns and clean architecture implementation in C#.
- Preferred experience in implementation complex application development concepts such as distributed cashing, dependency induction, retry and scheduling mechanism, background/log running processes.
- Coding review and OWASP top 10 knowledge would be considered as plus point.
- Python and React knowledge would be preferred.
- Knowledge of business processing simplification in enterprise environment, with open source platforms, and enterprise software applications.
- Experience in the development and implementation of standards, procedures and guidelines to support operational processes.
- Self-motivated with the ability to prioritize, meet deadlines, and manage changing priorities;
- Strong interpersonal, communication skills and Experience in technical writing such as functional specification, technical specification, etc.
Experience in quality assurance & mitigation/ control, risk analysis and data analysis