What is a Senior Software Developer?
The Senior Software Developer is responsible for quality, integrity, scalability, resiliency, and overall technical performance of the products and services developed within the product portfolio. Working in a matrixed scrum team environment of Developers, Business Analysts, and Quality Assurance Analysts both internally and externally, this role will ensure that overall the technical solution meets business needs and aligns with GoodLife’s technology strategies. The Senior Software Developer participates in all phases of the software development lifecycle, from requirements definition through service delivery and operational support, and is responsible for producing high-quality solutions and accurate system design documentation. They build and maintain high quality code, provide support during testing cycles and post-production deployment, and engage in peer code reviews. The Senior Software Developer assumes a technical leadership position for development projects and shares knowledge and experience with other members of the development team.
What will you be doing?
- Responsible for the development, deployment, and support of software components for products and services in a Microsoft .NET environment.of software
- Gathers, analyzes and fully understands business requirements and produces system design documentation. Drives non–functional requirements into the work stream
- Works with Architecture, Infrastructure, and Security teams to understand the infrastructure and platform roadmaps and proactively leads and implements initiatives to ensure applications are utilizing current, supported versions
- Evaluates the current system architecture to ensure that all coding has been tested, adheres to established reference architectures, and aligns with microservice patterns and practices
- Identifies opportunities for process improvement; develops and implements solutions to drive iterative change
- Debugs and tests new software or significant enhancements to existing software applications
- Interacts with QA Associates to quickly diagnose and resolve system problems, and creates release notes, operating procedures and technical documentation
- Works with support teams and the product team to solve common problems and to enhance the availability and content of designated applications
- Ensures that the solutions provided are integrated, aligned with the corporate direction, and make the most appropriate use of technology
- Works with other developers to optimize their investment in existing packaged and internally developed applications
- Acts as adviser or coach to junior developers as needed. Provides mentorship and leadership to the development team, motivating team members with a positive energy and influential attitude
- Persuades and influences others through strong communication and diplomacy skills
- Conducts peer reviews to explain and defend component design, coding competency
- Accurately estimates effort for assigned tasks and consistently meets commitments
- Promotes extensibility and re-usability in application design and coding
Do you have what it takes?
- A Bachelor’s degree in Computer Science, Mathematics, Business, or related disciplines is required, or equivalent work experience and technical training
- 8+ years experience in software development with a minimum of 5 years experience in web-based development of .NET and OO applications with responsibility for the analysis, design, development and maintenance of a variety of software applications, creating test plans, test cases/scripts, testing tools
- Must have experience writing stored procedures. Design and development experience should include n-tier, client/server and web (intranet and internet)
- Experience throughout the entire software development life cycle (SDLC)
- Skilled in many of these technologies: Windows family of operating systems and servers, .NET Framework (VB.NET, ASP.NET, ADO.NET, Visual Studio.NET), XML/XSL/XSLT, Java, SQL Server databases, C#, C++, ASP, REST, SOAP and/or SQL program languages
- Deep understanding of API development & design, information architectures and microservices. A stellar developer able to teach less experienced staff and elevate our capabilities
- Significant experience in a DevOps environment, able to drive solutions in Containerization & CI/CD
- Strong people skills; team player; excellent oral and written communication skills
- Effective organizational and time management skills; can interface with all levels within the company
- Strong analytical and problem-solving skills. Able to multi-task
- Ability to evaluate tools & technologies beyond direct areas of experience
- Ability to write thorough, concise, technical specifications
- Ability to independently develop software from ground up and end-to-end
- Ability to unit-test own code, and review the code of other programmers, and provide insightful recommendations
- Core Competencies: Functional/Technical skills, Problem Solving, Technical Learning and Time Management
- Home Base: GoodLife Home Office in London, Ontario
- Standard Office Hours: Monday to Friday, 9 a.m. to 5 p.m
- Collaborative, open space office environment
- Some weekend/evening work and overtime may be required
- Some travel may be required
What’s in it for you?
For a list of the endless company benefits please go to: https://jobs.goodlifefitness.com/page/show/benefits