An exciting opportunity exists for a Full Stack Software Developer to join our existing high-performance team.
Duties and Responsibilities:
- Design and develop medium to complex solutions;
 - Improve and optimize the performance of existing systems;
 - Provide guidance in troubleshooting root-cause errors
 - Manage and guide junior team members to achieve their goals.
 - Take part in the design workshops of the database and software.
 - Stay up-to-date with technology trends, investigate solutions and make appropriate recommendations;
 - Write software according to business requirements specifications, processes and standards;
 - Perform unit testing and hand over completed software for further testing, within agreed time frames;
 - Responsible for all aspects of the application development project life cycle;
 - Develop and maintain modern software application architecture roadmap that supports an evolving enterprise innovation platform;
 - Define and Maintain Application / Data / Security Architecture Principles and Policies;
 - Update system documentation;
 
QUALIFICATIONS AND EXPERIENCE
Qualification
Minimum Requirements:  
- BTech IT or Informatics OR
 - Bachelor’s degree, preferably in Computer Science, Management Information Systems, or related experience.
 
Preferably however not mandatory, in addition to the above:
- Additional qualifications in IT-related fields, including programming and database design.
 - MCSD (Microsoft Certified Solutions Developer);
 
Work Experience
Minimum Requirements:  
- At least 7 years in-depth programming experience with C# .NET Core and SQL;
 - Good knowledge of Microsoft SQL Server;
 - In-depth knowledge of XML and web services
 - Understanding of Agile principals
 - 3 years’ experience leading a team
 - 2 years’ experience in the financial services industry, specifically short-term insurance;
 
Preferably however not mandatory, in addition to the above:
- Experience with building a system from the ground up;
 - Exposure to [URL Removed] or Angular;
 - Good exposure to Cloud;
 
SOFTWARE DEVELOPMENT (C#) – Senior Level
TECHNICAL COMPETENCIES  
Minimum Requirements:
- Strong understanding of the various phases of a software development life cycle;
 - Good appreciation of software design principles, practices and patterns;
 - Structured approach to software development;
 - Experience with in-depth testing;
 - Ability to “see the bigger picture”, i.e., appreciate the business context in which the software will be deployed;
 - Working in an Agile team/environment and related workflows/ toolsets.
 
Preferably, in addition to the above:
- To stay abreast of new technologies
 - Innovative and out-the-box thinker
 
ATTRIBUTES
Attributes required for the position include but are not limited to:  
- Strong programming aptitude;
 - Strong software design skills
 - A keen interest in the latest trends in software development;
 - Committed to delivering high quality work;
 - Taking ownership of work delivered;
 - Ability to understand business issues related to the financial services industry to deliver a solution accordingly;
 - Strong communication skills, both oral and written
 - Good deductive and inductive reasoning
 - Strong analytical and problem solving capabilities
 - Good interpersonal skills, ability to work with diverse personality types and deal with conflict in an effective way
 - Ability to work individually and with teams
 - Ability to adapt to a fast-paced, ever-changing environment.
 - Experience executing within a defined delivery methodology required. Methodology development experience will be an advantage;
 - Positive attitude;
 - Commitment to meeting deadlines.
 
  
Desired Skills:
- C#
 - CORE
 - SQL
 - XML
 - REACT.js
 - Angular
 - MCSD
 
Desired Work Experience:
- 5 to 10 years Software Development
 
Desired Qualification Level:
- Degree