| Position Summary
The candidate will be primarily responsible for development, enhancement, troubleshooting and maintenance for web applications and backend processes built on Microsoft technology stack. The successful senior/lead developer will be solution oriented, experienced in delivering complex projects, adapt to changing environments, and able to work with minimal defined requirements. The ideal candidate must have previous experience leading an agile team of other developers as well as hands on experience in implementing, unit testing, and debugging applications.
- Work with Architects and Business Analysts to understand business and technical requirements.
- Set technical direction for the team and take responsibility to deliver quality code.
- Manage release process for applications, using TFS and other tools.
- Work with QA team to help with testing process and evaluate bugs and come up with fixes.
- Responsible to ensure code adheres to architecture, standards and best practices.
- Effectively communicate with various stakeholders.
- Mentor and educate other developers in the team.
- Work at the lowest levels and taking the product through the entire software development lifecycle.
- Planning, designing, developing, testing, and implementing new feature functionality for software applications per customer or internal specifications.
- Identifying, troubleshooting and debugging defects in application code.
- Resolve the difficult and complex challenges associated with the development of complex applications.
- Perform unit, integration and system testing on the application and all affected systems.
- Deliver the required functionality in an agreed upon timely manner.
- Work in a Scrum environment.
- Bachelor's Degree in CS or MIS or equivalent experience.
- Must have advanced skills with SQL Server development writing stored procedures and functions.
- Experience with relational database modelling.
- Experience with Team Foundation Services or other centralized or distributed source control systems.
- Experience participating in code reviews and making recommendations based on requirements and best practices.
- Advanced understanding of object-oriented programming fundamentals.
- Ability to recognize and apply application development patterns and best practices.
- Ability to focus on deadlines and deliverables.
- Ability to maintain confidentiality.
- Proven strong relationship-building and communication skills with team members and business users.
- Experience in the education industry is preferred.
- Experience working on an Agile/Scrum team is preferred.
- Experience with Microsoft Azure is preferred.
- Ability to effectively collaborate with developers and business experts.
- Ability to work as part of a self-directed team, in which tasks are determined daily in coordination with co-workers, rather than being assigned.
- Ability to excel in a collaborative and distributed team environment.
- Ability to work with a minimal amount of direction while being pro-active in keeping their management informed of project related issues.
- Ability to work under pressure.
- Ability to respectfully question ideas and share a point of view with others in support of the business requirements and needs.
- Ability to effectively communicate with various levels of employees ranging from entry level to senior leadership.
- Ability to manage multiple projects at the same time and shift priorities quickly.
- Proven strong problem-solving skills, troubleshooting and root cause analysis.
- Excellent written and verbal communication skills.
- Strong aspiration to learn modern technologies.