Technical Lead - JAVA
PowerSchool | R&D | Bengaluru, Karnataka
This position, under the general direction of the Director and Manager, Software Engineering, will be responsible for coordination, quality and output of the Software Engineer team to achieve the department and company goals. This role will implement, code, build, and test new features, maintain existing features, and develop reports that will include components, data models, customization and reporting features for our products. Additionally, this position will gather and refine requirements, develop designs, implement, test and document solutions to produce the highest quality product and customer satisfaction. Additionally, this position will provide leadership and guidance to create a multi-functional team of top level, high-performing Software Engineers.
Duties and Responsibilities
Essential duties and responsibilities include the following. Reasonable accommodations may be made to enable individuals with disabilities to perform the essential functions.
• Lead a software development project and manage software development from inception to delivery
• Be both a highly technical hands-on coder and effective at mentorship
• Coach and mentor team members for skill development and experience
• Establish goals and objectives for the team that aligns with the overall roadmap and delivery schedules
• Works to increase team efficiency and effectiveness in order to achieve long term goals
• Participates in hiring of new team members
• Performs any HR related tasks
• Analyze performance and develop improvements to performance of web application.
• Perform upgrades to 3rd party libraries and tools used by the web application
• Implement new web application software features and products following best practices such as authoring of unit tests, writing maintainable code, applying established patterns and algorithms
• Specialize in client or server side web application development as a member of a project team. Preference for familiarity with the full technical stack.
• Develop software to support internal initiatives, tools, update framework and application functionality
• Work as part of an Agile SCRUM team in the planning, scoping, estimation and execution of technical solutions
• Work within a wide range of new and legacy code and technologies in a mature codebase
• Other duties as assigned
To be considered for and to perform this job successfully, an individual must be able to perform each essential duty and responsibility satisfactorily. The requirements listed below are representative of the knowledge, skill and/or ability required.
• 6+ years’ experience in software engineer role
• 0-2 year’s prior experience leading a team
• Bachelor’s degree in Computer Science or Information Technologies required or equivalent experience
• Knowledge of Java, Spring (IoC), Hibernate, JPA, JAX-RS and/or .net
• Proficient in SQL, Oracle experience a plus
• Familiar with OWASP threats and mitigation techniques
• Strong written and verbal communication skills
• Strong ability to work with current software design principles and concepts such as patterns, algorithms, data structures, dependency injection, MV**, SOA, n-tier architecture
• Strong ability to handle a heavy workload with multiple projects and frequent interruptions
• Strong ability to work in a changing, dynamic environment
• Ability to mentor and coach employees