JOB DESCRIPTION
The Role
As a Software Developer, you will work as part of a development team following Agile-Scrum methodologies to deliver the desired technologies on time and within budget, ensuring the end-product continues to meet the expected high levels of reliability, maintainability, usability and performance.
Using your practical experience to hit the ground running, your role will cover a wide range of tasks such as:
- Development of highly reliable, reusable, maintainable, and competitive software solutions following the company’s set of software development standards and best practices
- Work closely with solution and data architects to implement software development plans
- Seeing through a project from conception to finished product
- Reviewing, refactoring, debugging code to identify defects, performance bottlenecks or technical debt
- Ensuring high-quality deliverables by working closely with quality assurance engineers during regression, functional test, and deployment-related activities and developing acceptable unit test code coverage criteria
- Participating in sprint planning meetings, daily stand-ups and sprint retrospectives, striving to continuously improve the team velocity, its processes and engineering practices
- Working with the Product Owner to help create User Stories and define acceptance criteria
- Documenting requirements analysis or design decisions
- Conduct code reviews for peers
- Participle in the evaluation of emerging technology and tools
JOB QUALIFICATION
The Requirements
- Bachelor’s degree in Computer Science, Engineering, Management Information Systems or related area.
- 5 years of experience in software development in the Microsoft platform, programming languages and tools:
- C# 7.0+, .NET 4.8+, Angular 2+, npm, WebAPI
- SQL Server 2019 or later, proficiency in Transact-SQL and RDBMS
- Understanding of Git for software version control
- Proficiency in Azure DevOps or similar, strong understanding of CI/CD (pipelines, project repositories, work dashboards and test planning)
- NUnit or XUnit for unit test development
- Advanced proficiency in OOP, SOLID principle, Web Architecture, and programming design patterns.
- Extensive industry experience with most stages of software development lifecycle: requirement analysis, estimation, detailed software design, programming, unit and system-level testing, installation and deployment. Have performed application maintenance and troubleshooting for security, performance, and optimization.
- Proven industry experience with systems development techniques and methodologies (entity relationship diagramming and functional decomposition) and software engineering best practices, processes and supporting tools.
- Experience of working in an Agile-Scrum environment – close partnership with QA and/or project stakeholders (Product Owners, Project Managers, business), preferably with experience working collaboratively with colleagues from different geographic areas.
- Strong understanding of Azure application architecture – PaaS, IaaS and SaaS.
- Experience in developing cloud-based applications or migration of legacy applications to cloud, exposure to Azure App Services, Azure SQL/other databases or similar
- Ability to coordinate day-to-day development and bug fixing activities, multi-task and be mindful of deadlines. Self-motivated and ability to remain focused on assigned projects.
Preferred Qualifications
- .Net Core
- Cloud development experience: Azure Storage, Azure Data Factory, Azure Function Apps and LogicApps
- Knowledge of PowerApps and/or Power BI
- UI knowledge or experience: HTML 5, Bootstrap v 4.0, CSS v3, Javascript/JQuery
OTHER JOB REQUIREMENTS
Education
Bachelor’s Degree / College Degree
Field of study
Computer Science/Information Technology
Specialization
IT - Software
JOB BENEFITS