This is a senior developer position on the web development team. The role should be able to effectively complete all phases of software development life cycle including analysis, planning, design, coding, testing, support and any other tasks related. However, the primary strength should be on leading projects from a technical standpoint, being able to design and implement applications using design patterns and good coding skills, backed-up with a well thought process. The role should have proven experience using Microsoft technologies. This role will participate on development of both internal and customer facing applications.
This being a senior position, as mentioned, there isn't much need of superior supervision, but the position holder will report to the Web Development Manager.
Qualifications & Related Experience
- Minimum experience of 4 years architecting and leading application development.
- Minimum experience of 8 years in developing software using the following technologies, architecture and practices:
- Microsoft .NET technologies - ASP.NET Web Forms and MVC, ADO.NET, WCF, Web API, Entity Framework, IIS Web Server, Visual Studio 2010 or 2012
- Architectures – N-Tier & Layer Architecture, Service-Oriented Architecture
- Testing – Any Unit Testing Frameworks
- SQL – SQL Server 2008 or 2012
- Design patterns
- Bachelor's Degree in computer science (or related) is preferred, or proven solid background in software engineering.
- Proven experience as project lead or technical lead positions it’s a plus.
- Experience developing websites using a Content Management System (CMS) it’s a plus.
- Experience with using or deploying continuous delivery and continuous integration processes it’s a plus.
Essential Duties and Responsibilities
- Gather and analyze requirements from users
- Estimate project tasks and help define project plans
- Design and develop software solutions that aligns with the business needs
- Design software solutions using industry best practices
- Help on testing applications, and promote quality within the rest of the team
- Help on supporting existing software solutions
- Stay updated with trends on software development technologies
- Help other staff personnel on improving their knowledge and skills, as seen fit
- Manage junior level staff on minor projects, when needed
- Create technical guidelines documentation