We are seeking a .NET developer responsible for building .NET applications using Your primary responsibility will be to design and develop these layers of our applications, and to coordinate with the rest of the team working on different layers of the infrastructure. A commitment to collaborative problem solving, sophisticated design, and quality product is essential.
Key Responsibilities
Translate application storyboards and use cases into functional applications
Design, build, and maintain efficient, reusable, and reliable code
Integrate data storage solutions
Ensure the best possible performance, quality, and responsiveness of applications
Identify bottlenecks and bugs, and devise solutions to mitigate and address these issues
Help maintain code quality, organization, and automatization
Develop new product features and new applications within an Agile environment as well as maintaining and supporting existing applications
Write appropriate unit, UI, performance and integration tests
Deliver high quality code that is maintainable and readable and adheres to our coding standards
Any other duties as reasonably requested
Skills
Strong knowledge of .NET web framework
Proficient in c#, with a good knowledge of their ecosystems
Strong understanding of object-oriented programming
Demonstrate a high level of competence in object-oriented analysis, design and coding in a .NET server-side environment, specifically utilising the Microsoft MVC framework.
Produce standards compliant HTML, CSS and JavaScript from supplied artwork and technical specifications
Skill for writing reusable libraries
Familiar with various design and architectural patterns
Demonstrate a structured approach to development, using design patterns where appropriate and using SOLID principles
Knowledge of concurrency patterns
Familiarity with Microsoft SQL Server
Design and implement systems that use relational databases, specifically SQL 2008 R2 and mySql
Experience with popular web application frameworks
Knack for writing clean, readable, and easily maintainable code
Understanding of fundamental design principles for building a scalable application
Experience creating database schemas that represent and support business processes
Basic understanding of Common Language Runtime (CLR), its limitations, weaknesses, and workarounds
Experience implementing automated testing platforms and unit tests
Proficient understanding of code versioning tools
Work to pre-defined requirements and produce code that meet the requirements