Lead Software Developer recruitment
Group Overview
The Delivery Excellence Group is responsible for a number of functions in the Cary Development Center and globally for Common Services providing Quality Assurance, Environment Management, Release Management, Configuration Management, Technical Documentation, support of the Application Services Improvement Program initiatives for their area and the introduction and rollout of Agile/Scrum/Lean development practices.
They support the firms leadership position in a number of critical areas by transforming and executing software development activities across a number of business functions. The contributions made by their team contribute significantly to enhance their global operations capability.
Position Description
The Lead Software Developer and Coach serves as a role model and chief advocate of development practices within the organization. In this role, you will research and influence teams on best practices and patterns to improve the ability of teams to deliver quality software. You will guide the formation and ongoing growth of a highly effective team through leadership, influence and education. Your measures of success will be adoption of practices, quality metrics and customer satisfaction scores.
Responsibilities and Attributes
- Ensure that appropriate Agile practices are adopted and followed within the team, more specifically, mentor teams and individuals on the need and practices of unit testing and TDD, using strong design patterns and peer code
- Help develop software engineering best practices, and ensure they are internalized
- Work to evoke excellence from other team members
- Mentor team members to develop their methodology, technical skills and abilities
- Lead the team to deliver scalable, reliable software that meets customer needs
- Work with management, people across other departments, and customers to properly integrate Agile methodology into business processes
- Pair with other software developers, following XP and Agile practices to foster excellence in developing software
- Participate in grooming, planning and retrospective sessions to improve the team's results, work process, and environment
- Work as part of a cross-functional team to improve the teams ability to deliver valuable software and services to customers
- Develop training and infrastructure for others to use in creating appropriate automated acceptance and unit tests for all software that is developed
- Lead sessions with developers to foster best practices
Experience
- 4+ years of experience in a senior development role
- Extensive experience in developing enterprise software applications
- 3-5 years of experience in an Extreme Programming environment
- Experience with full software lifecycle, including design, testing, creation, delivery, and maintenance
- Experience with unit testing, object mocking, data mocking, etc…
- Experience with software version control systems, including SVN / GIT
- Experience with Continuous Integration platforms such as Cruise Control or Team City
- Experience with XML, SOAP, JSON
- Experience using influencing capabilities to support and build client and team relationships
- Good communication, negotiation, and networking skills
- Excellent client and service orientation
- Ability to work in fast paced environment
- Passion and expertise to share knowledge and best practices
- Manage virtual teams and work in matrix reporting structure
- Excellent analytical skills
Education
- Bachelor’s Degree required (or equivalent work experience