The Technical Lead applies professional principles, practices, and techniques to lead product development teams and control schedules, cost, and performance risks to ensure satisfied customers.
This role has ultimate responsibility for all assigned products and manages customer satisfaction, definition, planning, monitoring, and others aspects of a product.
II. Essential Duties & Responsibilities
- Managing a software development team on products/projects of moderate to large size and complexity
- Working with the team to translate product vision and requirements into software design
- Coaching and guiding the team to produce clean, maintainable code following best practices (unit testing, source control, continuous integration, automation, design patterns, etc.)
- Collaborate with other development teams, QAs/SDETs (software development engineer in test), Operations engineers and Support engineers to ensure smooth rollouts and continual operation.
- Assist the team in debugging code and troubleshooting problems
- Managing personnel activities of direct reports
- Providing feedback to the team and individuals on their performance
- Participating in recruiting and interviews
- Following Agile methodology, working alongside software developers and product owners
- Experience with relational (SQL Server, MySQL , Postgres) and No SQL ( Mongo ) databases
- Experience working with a large-scale system (100+ servers)
- Mobile Applications Design
To perform the job successfully, an individual should demonstrate the following:
Software Development Management - Develops project plans; Coordinates projects; Communicates changes and progress; Completes products/projects on time and budget; Manages development teams activities.
Delegation - Delegates work assignments; Matches the responsibility to the person; Gives authority to work independently; Sets expectations and monitors delegated activities; Provides recognition for results.
Teamwork - Balances team and individual responsibilities; Exhibits objectivity and openness to others' views; Gives and welcomes feedback; Contributes to building a positive team spirit; Puts success of team above own interests; Able to build morale and group commitments to goals and objectives; Supports everyone's efforts to succeed.
Change Management - Develops workable implementation plans; Communicates changes effectively; Builds commitment and overcomes resistance; Prepares and supports those affected by change; Monitors transition and evaluates results.
Leadership - Exhibits confidence in self and others; Inspires and motivates others to perform well; Effectively influences actions and opinions of others; Accepts feedback from others; Gives appropriate recognition to others.
Customer Commitments. - Manages difficult or emotional customer situations; Responds promptly to customer needs; Solicits customer feedback to improve service; Responds to requests for service and assistance; Meets commitments.
Analytical - Synthesizes complex or diverse information; Collects and researches data; Uses intuition and experience to complement data; Designs work flows and procedures.
Problem Solving - Identifies and resolves problems in a timely manner; Gathers and analyzes information skillfully; Develops alternative solutions; Works well in group problem solving situations; Uses reason even when dealing with emotional topics.
Quality - Demonstrates accuracy and thoroughness; Looks for ways to improve and promote quality; Applies feedback to improve performance; Monitors own work to ensure quality.
Adaptability - Adapts to changes in the work environment; Manages competing demands; Changes approach or method to best fit the situation; Able to deal with frequent change, delays, or unexpected events.
Initiative - Volunteers readily; Undertakes self-development activities; Seeks increased responsibilities; Takes independent actions and calculated risks; Looks for and takes advantage of opportunities; Asks for and offers help when needed.
Judgment - Displays willingness to make decisions; Exhibits sound and accurate judgment; Supports and explains reasoning for decisions; Includes appropriate people in decision-making process; Makes timely decisions
Planning/Organizing - Prioritizes and plans work activities; Uses time efficiently; Plans for additional resources; Sets goals and objectives; Organizes or schedules team and their tasks; Develops realistic action plans.
Dependability - Follows instructions, responds to management direction; Takes responsibility for own actions; Keeps commitments; Commits to long hours of work when necessary to reach goals; Completes tasks on time or notifies appropriate person with an alternate plan.
- 8+ years overall professional software development experience.
- 5+ Years of Expertise in .NET framework, C/C++, C# or equivalent programming languages, multi-threaded programming and distributed systems.
- 2+ years of PHP development experience
- 3+ years of experience working in a Linux/Unix development environment
- 2+ Years with Cloud based Mobile Technologies
- Experience leading a software project or software development team
- Experience developing web applications and services
- Experience with design principles (design patterns, cohesion/coupling, distributed systems)
- Experience with good engineering practices (test driven development, continuous integration and pair programming, etc.)
- Familiarity with object oriented development principles
- Ability (and enthusiasm) in mentoring less experienced developers
- Experience with Agile methodologies (Scrum, XP etc.)
- Excellent written and verbal communication, problem solving, interpersonal, and time management skills
- Preferably 5 years of product development experience.
- 2+ years experience in the Healthcare Domain/industry and product development is a plus.
- MS in Computer Sciences/MCA.