-
Design, develop and maintain complex telecom grade applications to enhance the functionality of products and services, compliant with business requirements and quality objectives, in order to provide new products, functionalities and services. Has in depth knowledge of specific areas and extensive knowledge of software development and provides insight to senior members of the team.
-
Play key role in research and development activities leading to new product and services and shaping the architecture of existing products.
-
Communicates with cross-functional teams involved in whole software development lifecycle. Leads temporary project based teams with no administrative responsibility. Task management of project teams. Supervise solution/implementation of other developers
-
Responsible for Analysis and validation of requirements for the assigned projects and clarifying business requirements.
-
Works with strategy functions, Technical Coordinators, Product Managers, Service Managers & Infrastructure managers to maintain & publish a product roadmap, showing what functionality will be released when.
-
Works with Deployment & Support and Test teams to ensure capacity planning is undertaken to guarantee future operational stability of the product.
-
Develop specifications by translating customer, business, and product needs into software requirements, perform resource planning, and deliver the design-related deliverables in timely manner. Primary functions would include: building plans, managing development efforts, and organizing delivery.
-
Negotiate difficult and or critical business matters, through interaction with senior and executive level managers both internally and externally.
-
Accountable for delivering detailed designs of the product and services.
-
To ensure that projects and services can be delivered within projected budget ( in terms of resource usage and hardware design ) ,performance criteria and timescale.
-
Provide immediate solutions to problems by himself/herself or suggesting interim solution if it requires detailed examination.
-
Follow up testing phase of the product to ensure that software release is bundled and deployed correctly on time.
-
Use development resources and prioritize efforts and resources efficiently.
-
Responsible for coding, debugging and testing complex software modules and cases (drawing simple flow chart, designing database model, designing modules, architecture).
-
Responsible for reviewing design and source code. If necessary, perform re-factoring software modules.
-
Document detailed system design specification and other technical documents (Writing release notes, subsystem specification & TLD documents )
-
Responsible for performing application monitoring and performance tuning of released product and services.
-
Do the troubleshooting, maintenance and 3rd level support of the products and services delivered to customers, as long as required. (Analyzing and fixing problems reported by customers.)
-
Support and troubleshoot applications as required, optimizing performance, resolving production problems, and providing timely status updates.
-
Develop and execute development test ( including unit test ) to increase the overall quality of the product. (Testing usability, scalability, performance, compatibility, reliability of software )
-
Tracking and logging related activities on issue tracking tool.
-
Escalate critical problems and projects risks to upper manager.
-
Obey coding rules, standards and detailed procedures and inform other developers.
-
Design and develop comprehensive functional specifications and work estimates based on these specifications.