SOFTWARE DEVELOPER I, II, SENIOR
Responsible for the analysis, design, code, test, documentation and support of new software applications and enhancements to existing applications. Contribute to the preparation of specifications to resolve business client questions. 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.
- Assist others in refining system specifications
- Participates in gathering specifications from users
- Translates detailed program specifications for less complex problems into coded computer instructions
- Creates and/ or modifies programs to adapt to changes in needs and requirements.
- Tests coded program routines and makes revisions to eliminate errors.
- Reviews test results with users, completes final program documentation, and obtains approval for changes
- Analyzes issues and uses judgement to make decisions
- Other duties as assigned
- Analyze and document how the business requirements fit into existing system
- Create and refine system specifications
- Gather requirements from business
- Translate detail program specifications for complex problems into coded computer instructions
- Create and/or modify programs to adapt to changes in need and requirements
- Test coded program routines and makes revisions to eliminate errors
- Review test results with business, complete final program documentation and obtain approval for changes
- Assist in and sometimes lead on-the-job training of less experienced programmers
- 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’s degree in related field preferred.
- Basic knowledge of one or more of the following skill sets: .Net, C#, SSIS, SSRS, Informatica.
- Basic knowledge of Structured Query Language.
- Development knowledge of all phases of Software Development Lifecycle.
- Excellent interpersonal skills with the ability to communicate effectively and establish working relationships with individuals at varying levels within the organization.
- Ability to work in an open team environment.
- Demonstrates attention to detail, organization, and timeliness in order to meet customer service expectations
- Demonstrates effective problem solving skills.
- Ability to work on several projects simultaneously with direct guidance.
- Perform tasks within predefined guidelines and procedures as assigned by manager or project team
- Proficient in Microsoft Office (Word, Excel, Outlook, PowerPoint, Visio)
- Developer I minimum requirements in addition to the below
- 3+ years of experience in all phases of software development including design, coding, testing, debugging, implementation and source management
- Possess expert working experience using one or more of the following skill sets: .Net, C#, SSIS, SSRS, Informatica and/or SQL
- Ability to lead and work with other team members
- Ability to work with and understand business client requirements
- Effective organizational and time management skills with the ability to work under pressure, adhere to project deadlines and procedures, multi-task and be detail-oriented
- Developer II minimum requirements in addition to the below
- 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
- Experienced with front-end frameworks (AngularJS, Knockout, React, etc.)
- Experience with SOAP and Restful Web Services (WCF, Web API)
- Proficient in SQL Server 2012 and above, Transact SQL, stored procedures, triggers, DTS packages
- Experience with Entity Framework and Object-Relational Mapping (ORM) frameworks
- Experience with applying design and architectural patterns
- Familiar with TFS 2013 and higher
- Experience in end-to-end Software Development Life Cycle (SDLC) project
- Experience working with Agile/Scrum methodologies
- 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
- Understands solution at the project level
- Possess experience in the insurance industry and/ or basic knowledge of insurance
- Understanding of data modeling concepts
- Relevant Microsoft certification
- Insurance industry experience