Role Proficiency:
Act creatively to develop applications by selecting appropriate technical options optimizing application development maintenance and performance by employing design patterns and reusing proven solutions. Account for others' developmental activities; assisting Project Manager in day to day project execution.
Outcomes:
Interpret the application feature and component designs to develop the same in accordance with specifications. Code debug test document and communicate product component and feature development stages. Validate results with user representatives integrating and commissions the overall solution. Select and create appropriate technical options for development such as reusing improving or reconfiguration of existing components while creating own solutions for new contexts Optimises efficiency cost and quality. Influence and improve customer satisfaction Influence and improve employee engagement within the project teams Set FAST goals for self/team; provide feedback to FAST goals of team membersMeasures of Outcomes:
Adherence to engineering process and standards (coding standards) Adherence to project schedule / timelines Number of technical issues uncovered during the execution of the project Number of defects in the code Number of defects post delivery Number of non compliance issues Percent of voluntary attrition On time completion of mandatory compliance trainingsOutputs Expected:
Code:
Code as per the design Define coding standardstemplates and checklists Review code – for team and peers
Documentation:
checklists
guidelines
standards for design/process/development Create/review deliverable documents. Design documentation
requirements
test cases and results
Configure:
Test:
scenarios and execution Review test plan created by testing team Provide clarifications to the testing team
Domain relevance:
Manage Project:
Manage Defects:
Estimate:
Manage knowledge:
share point
libraries and client universities Review the reusable documents created by the team
Release:
Design:
LLD
SAD)/architecture for applications
features business components and data models
Interface with Customer:
Manage Team:
opportunities
etc Ensure team members are upskilled Ensure team is engaged in project Proactively identify attrition risks and work with BSE on retention measures
Certifications:
Skill Examples:
Explain and communicate the design / development to the customer Perform and evaluate test results against product specifications Break down complex problems into logical components Develop user interfaces business software components Use data models Estimate time and effort resources required for developing / debugging features / components Perform and evaluate test in the customer or target environments Make quick decisions on technical/project related challenges Manage a team mentor and handle people related issues in team Have the ability to maintain high motivation levels and positive dynamics within the team. Interface with other teams designers and other parallel practices Set goals for self and team. Provide feedback for team members Create and articulate impactful technical presentations Follow high level of business etiquette in emails and other business communication Drive conference calls with customers and answer customer questions Proactively ask for and offer help Ability to work under pressure determine dependencies risks facilitate planning handling multiple tasks. Build confidence with customers by meeting the deliverables timely with a quality product. Estimate time and effort of resources required for developing / debugging features / componentsKnowledge Examples:
Appropriate software programs / modules Functional & technical designing Programming languages – proficient in multiple skill clusters DBMS Operating Systems and software platforms Software Development Life Cycle Agile – Scrum or Kanban Methods Integrated development environment (IDE) Rapid application development (RAD) Modelling technology and languages Interface definition languages (IDL) Broad knowledge of customer domain and deep knowledge of sub domain where problem is solvedAdditional Comments:
Primary Job Duty: Works with product development team of scientists and engineers to design, modify, develop, implement and maintain enterprise search functionalities using Apache Lucene based search technologies like Apache Solr and LucidWorks Fusion. Also works on maintaining, migrating legacy search applications running on Microsoft FAST and other search engines. Minimum Qualifications: • A Bachelors’ Degree in Computer Science, Engineering, or equivalent experience. • Strong experience designing and developing interactive scientific or e-commerce web solutions. • Strong experience working with and maintaining, enhancing, relevancy tuning Apache Lucene based search engines such as Apache Solr, LucidWorks Fusion. Or similar experience with other search engines like Oracle Endeca, Microsoft FAST, etc. • Thorough knowledge of enterprise and web search concepts. • Good understanding of linguistics concepts like ‘stemming’, ‘lemmatization’, etc. • Thorough understanding of SEO. • Strong working knowledge of Linux systems to be able to get around using command line to perform common tasks. • Strong working knowledge of AWS environments. Experience instead in other Cloud systems acceptable. • Working experience with Java technologies including Core Java (8+), Servlets, JDBC, Hibernate, EHCache, Tomcat server. • Working experience with web technologies like MVC frameworks (Struts 2, Spring), Tiles, Web Services. • Working experience with an RDBMS (Oracle, MySQL, Postgres, etc.), Stored Procedures and working with data formats like XML and JSON. • Working experience with NoSQL databases (MongoDB, Redis, etc.). • Experience with Linux programming or administration a plus. • Experience with Agile Software Development process a plus. • Clear understanding of client-server functionality, web browser technology, object oriented programming, functional programming and server side programming languages. • Excellent communication / documentation skills. • Must be detail oriented and a self-starter. • Multi-tasking with good follow through skills, good communication skills. • Ability to work well in a team environment. • Strong problem solving, debugging and troubleshooting skills using latest tools and technology. • Ability to work alone and accomplish tasks without supervision.