Brief description :
In this position, you will be primarily responsible for the software architecture of various products/platforms that power our solutions. You will independently review the existing architecture to assess its suitability for various new feature additions as per market needs and specific customer implementations. In collaboration with other architects and management, you will conceive, rationalize and articulate the necessary architectural/design changes that ensure scalability, flexibility and reliability; spearhead the design process, and will oversee the implementation of the same from a technical perspective. Your expertise will be leveraged by the pre-sales/solutions team in drafting responses to RFI/RFPs and by product management in setting the vision and roadmap for products. You will also evaluate the suitability of technology developments in the industry (e.g. virtualization, cloud computing, big data, advanced analytics, etc.) and develop business cases for adoption of the same to improve product competitiveness.
In this role, you will also be challenged with creating proof of concepts for new innovative solutions using cutting edge technologies for customers and internal Product R&D. You will also be part of the senior technical leadership and will contribute towards further strengthening of software engineering processes, adoption of best practices and in general spearheading improvements that result in high quality products with optimal time to market. Other tasks include:
- Peer and expert reviews of artifacts including source code.
- Providing Hardware Recommendations for High Performance Application Deployments
- Performance Analysis and Application Tuning for Improved Performance
This Role reports to the Head – Product Development.
Duties and Responsibilities
- Able to design and develop solution for functional requirements with minimal supervision and take ownership
- Architecture, Designing and developing applications for high-availability and performance
- Contributing in all phases of the product development lifecycle
- Engineering for high performance products & platforms
- Writing well designed, testable and efficient code
- Analyze, troubleshoot and tune performance when required
- Define/adhere to best practices during implementation and integration
- Provide inputs to program management regarding prioritization, risks and overall plan
- Ability to escalate and provide right status to different stakeholders
- Enterprise Application Architecture experience
- Good understanding of Service Oriented Architecture
- Fluency in design patterns
- Adept at highly scalable, distributed application design and development
- Extensive experience in creating usable, modular and robust ReSTful API layer.
- Hands on experience in designing and developing applications using Springboot/Grails/Play using Java 7/8/Groovy
- Exposure to performance metrics & visualization techniques and tools
- Experience working on full product life cycle development, including design, programming, testing, documentation, implementation and maintenance
- Strong verbal/written communication & data presentation skills
- Must possess analytical skills and be detailed oriented
- Strong multi-tasking skills
- Relational Databases, NoSQL databases
- Minimum experience of 8 years in the above.
- BE/B.Tech/MCA/MSc Computer Science or equivalent
- Team player
- Results Oriented
- Customer focused
- Strong Analytical Skills
- An independent problem solver
Domain knowledge (desirable)
- Social Media data analytics
- Social Intelligence, reputation management
Preferred Location: Bangalore