SENIOR SOFTWARE DEVELOPER - .NET
Responsible for the analysis, design, coding, testing, documentation and support of new software applications and enhancements to existing applications. Provide technology solutions to allow business units achieve their objectives and goals.
Essential Duties and Responsibilities:
Following is a summary of the essential functions for this job. Other duties may be performed, both major and minor, which are not mentioned below. Specific activities may change from time to time.
- Design, develop and test software applications.
- Maintain systems by identifying and correcting software defects.
- Participate in requirement analysis and definition.
- Create technical specifications and unit test plans.
- Work with QA to align understanding of requirements and to develop system test plans.
- Work as part of an Agile development team to solve problems and develop projects in a fast paced environment.
- Follow instructions and pre-established guidelines to perform the functions of the job.
- Demonstrate a basic degree of creativity and problem solving skills.
- Follow the established software development life cycle.
- Follow established coding standards and naming conventions.
- Support applications using software development methodologies including structured programming, documentation, design and code review.
- Work with business analysts and application users to define and design robust user centric application solutions
- Collaborate with UX resources to drive consistent look and feel of user interface
- Collaborate with database resources to ensure robust and complete data access and manipulation
- Collaborate with IT Operations to ensure hardware and software are aligned to deliver business requirements
- Mentor junior and other new developers
- On-site regular attendance and punctuality are essential functions of the job
Minimum Skills and Competencies:
The requirements listed below are representative of the knowledge, skill and/or ability required. Reasonable accommodations may be made to enable individuals with disabilities to perform the essential functions.
- Bachelor Degree or, in-lieu of degree, equivalent education, training and work-related experience
- 7+ years of experience in the Microsoft technology stack
- Strong knowledge of the .NET framework (4.5 and higher)
- Strong understanding of object-oriented programming and SOLID design principles
- Proficient in C# with good understanding of VB.NET
- Experience with SOAP and Restful Web Services (WCF, Web API)
- Proficient with relational databases - specifically SQL Server.
- Good understanding of data and data modeling concepts
- Experience with applying design and architectural patterns
- Experience in end-to-end Software Development Life Cycle (SDLC) project
- Experience with code review and evaluation
- Good at understanding requirements and estimation
- Good team player, have ability and willingness to mentor junior developers
- Have passion for learning new technologies and enhancing existing skills
- Excellent verbal and written communication skills
- Self-starter that can work well in a team environment
- Ability to collaborate and function effectively in virtual teams
- Proactive issue resolution with a positive attitude
- Ability to deal with uncertainty, adapt and respond in a rapidly evolving business environment
- Ability to understand the solution eco-system, marketplace, and stakeholder point of view
- Possess experience in the insurance industry and/ or basic knowledge of insurance
- Experience with front-end frameworks (AngularJS, Knockout, React, etc.)
- Experience with Entity Framework and other ORM frameworks
- Experience working with Agile/Scrum methodologies
- Familiarity with TFS environment for source control, work management and DevOps (Continuous Integration and Deployment)
- Relevant Microsoft certification
- Insurance industry experience