The Lead Application Developer supports business solutions. The purpose of this role is to develop business software solutions for complex and large-scale projects through object and data modeling, database design, programming, quality assurance, and implementation support. The Lead Application Developer participates in application standards development and serves as an evangelist for best practices. Key Areas of Responsibility
- Perform all stages of the software development life cycle, self-manage activities on smaller projects and serve as technical lead on small, medium and large projects.
- Determine operating requirements, costs, as well as resource needs for assigned projects and work in conjunction with a project manager on initiatives.
- Co-lead with Project Manager employing object-oriented analysis and design techniques including use case analysis, object modeling, and database schema design to ensure business requirements and design goals are met.
- Participate in application architecture planning (including system partitioning and framework design) to determine optimal solution architecture, efficiency, maintainability, and scalability
- Lead / develop:
- High-level system narratives, storyboards, and user interface prototypes;
- Detailed design specifications for hardware and software use by the technical team;
- System test plans, ensure software quality assurance (SQA) standards are achieved, and validate that business goals are accomplished;
- Detailed estimates for projects, including resource allocation, timelines, and budget.
- Develop applications to CDW coding standards and quality.
- Collaborate with business and project teams to gather requirements and business needs.
- Make technical decisions to meet the design goals laid out in product road map and by management.
- Identify issues that require more attention, and work to resolve issues based on an understanding of the business problem being solved.
- Draw appropriate resources together in order to address technical issues.
- Direct and focus the efforts of the technical project team.
- Monitor progress of project teams.
- Mentor and coach junior team members.
- Complete projects/tasks on a timely basis, according to commitments made to stakeholders and management.
- Report project/task status to the management.
Qualifications Education and/or Experience Qualifications
Other Required Qualifications
- Bachelor’s degree or equivalent IT knowledge/experience.
- 10 years application development experience, or 7 years CDW Application Development experience
For Sales Solutions
- Expertise in developing applications
- Demonstrated ability to coach and mentor others.
- Advanced knowledge of product lifecycle and understanding of the role of methodology/frameworks.
- Advanced knowledge of object-oriented design, and programming techniques.
- Demonstrated ability to build rapport and maintain productive working relationships cross-departmentally and cross-functionally.
- Excellent written and verbal communication skills with the ability to effectively interact with and present to all stakeholders including senior leadership.
- Strong organizational, planning and creative problem-solving skills with critical attention to detail.
- Demonstrated success of facilitation and solutions implementation.
- Proven track record of leading application development projects.
- History of balancing competing priorities with the ability to adapt to the changing needs of the business while meeting deadlines.
- Advanced experience in creating applications using technologies such as C#, ASP.NET, ASP, Web Services, WCF, XML, SQL Server, SOAP
- Proficient skilled in Windows (WinForms) and WPF Development (Major Job Duties and Responsibilities)
- Expert level knowledge in N-tier Client Server application development including hands on experience on all phases of Software Development Life Cycle (SDLC) - Analysis, Design, Development, Deployment, Unit & Integration Testing, Post Production Support
- Advanced experience with multithreaded applications and services
- Experience with source control systems like TFS, Subversion, GIT
- Advantage: Extensive Experience with WPF
- Advantage: Experience with Angular
- Advantage: Experience with NoSQL technologies
- Advantage: Experience with Angular