Job Type
Work Type
Location
Experience
Responsible for building C# applications, including back-end services to front end. Primary responsibilities will be to design and develop applications, and to coordinate with the rest of the team working on different layers of the software architecture. Provide support for the ongoing maintenance of the developed applications / solutions. Collaborate on problem solving, designing, and ensure solutions and applications designed meet organizational / user requirements.
Ø Collaborate with stakeholders to gather and analyze user requirements and translate them into system specifications.
Ø Create solution diagrams, flowcharts and models that illustrate the type of code needed for programmers.
Ø Design and develop robust and scalable software applications, both on the front end and back end.
Ø Design, build, and maintain efficient, reusable, and reliable C# code.
Ø Write clean, efficient, and maintainable code following coding standards and best practices.
Ø Conduct unit testing and debugging to ensure software quality and identify and resolve issues.
Ø Recommend upgrades for existing systems and programs.
Ø Perform code reviews to provide constructive feedback and ensure adherence to coding standards and architectural guidelines.
Ø Document each aspect of a system or application as a reference for future upgrades and maintenance.
Qualifications and Skillset:
→ Preferably bachelor's degree in software engineering, computer programming, information technology, or similar.
→ For the right candidate without a Degree but with other appropriate qualifications.
→ 5 years experience in C# Software development.
→ Proficient in C#, with a good knowledge of its ecosystems.
→ Knack for writing clean, readable C# code.
→ Understanding fundamental design principles behind a scalable application.
→ Familiarity with the .NET framework.
→ Experience with other web application frameworks.
→ Basic understanding of Common Language Runtime (CLR), its limitations, weaknesses, and workarounds.
→ Strong understanding of object-oriented programming.
→ Skill for writing reusable C# libraries.
→ Familiar with various design and architectural patterns.
→ Knowledge of concurrency patterns in C#.
→ Familiarity with Microsoft SQL Server, My SQL and Oracle Database.
→ Creating database schemas that represent and support business processes.
→ Implementing automated testing platforms and unit tests.
→ Proficient understanding of code versioning tools such as Git
→ Familiarity with continuous integration