The role of the Tech Lead is to work with Principal Software Engineer, Architects, other Tech leads and is responsible for designing, executing, assessing, and troubleshooting System and Applications. This includes configuring, coding, developing, and documenting software specifications throughout the project life cycle of our large heterogeneous data backend applications that include several data sources, a number of servers, developed and run by distributed team. Duties and Responsibilities Provides technical oversight while writing new software, making modifications to existing software, or integrating software applications and modules in accordance with agreed upon specifications, often created with their leadership.Provides technical or general guidance to team members as well as across teams in area of subject matter expertise by possessing in-depth knowledge of a technical discipline or area.Provides technical leadership, and may lead project planning sessions with team members to define and analyze development requirements, provide design option, and provide work breakdown and estimates of work.Proficient and experienced in formal software development lifecycle, drives proactive decision-making.Adept at all aspects of technical communications, including using presentations technologies (e.g. WebEx, PowerPoint) and software demonstrations.Sound working knowledge of developing and implementing product development initiatives.Strong leadership skills, capable of leading a project team or demonstrating exceptional technical or domain specific leadership.Demonstrated ability with coding best practices, architectural principles, and to conduct code reviews.Lead a team of Sr Engineers and Engineers and guide & mentor themEducation and Previous Experience: Bachelor's degree in computer science or equivalent experience in software development 10+ years related experience and/or training Knowledge & Skills: 10+ years of technical experience with core emphasis in Python (including NumPy, Pandas, tensorflow, Cython). C/C++ or similar programming languages an extra bonus!Extensive experience in design a microservice based application using Python, Django, Flask, Gunicorn and related frameworks. Extensive experience developing Python in Linux/Unix and have very good understanding of Unix/BSD command line skills, understanding of Unix environment/Kernel calls, network etc. Ability to debug Python/Cython in Unix environment6+ years transact SQL/stored procedure development experience. Should know how to optimize SQL queries. Knowledge of Data Lakes like Redshift, snowflake or Google Big Query is a plus.3+ years of experience with containerization (docker, Kubernetes), DevOps tooling such as Jenkins, Ansible, Salt, or Chef.8+ years of experience working as a software engineer developing commercial software preferred.Experience with Agile developmentWorking knowledge of Linux server environments including clustering, PostgreSQL, network fundamentals and DNSOther skills Must be a self-starter, and able to work independently with minimal supervisionMust have strong analytical and problem-solving skills. Must be a Team player, with strong reasoning skills, who is able to effectively influence others, and who possesses excellent collaboration skills. Must be comfortable working in a fast-paced environment.
View Original Job Posting