Job Description Summary Responsible for designing and programming a small module or a large component and designing a feature, set of features, or whole feature area. She/he will work independently and contribute to the immediate team and to other teams across business. She/he will Lead design discussion in a limited manner.
Job Description Roles and Responsibilities:
In this role, you will:
- Identify the scope of the work, provide initial estimate, and justify the estimate with facts.
- Demonstrate the understanding of Agile software development lifecycle and able to distinguish the core inputs and outputs in each cycle.
- Engage in technical discussions; participate in technical designs and present technical ideas through white boarding.
- Execute in a fast-paced delivery mode and focus in delivering tasks to meet the product release goal.
- Maintain code quality through best practices, unit testing and code quality automation.
- Seek and provide feedback on design and development.
- Demonstrate the ability to make informed technology choices after due diligence and impact assessment
- Understand whole product, its modules, and the interrelationship between them while being an expert in the assigned component or module
- Help in designing interfaces and information exchange between modules
- Articulate the need for scalability and understand the importance of improving quality through testing.
- Be an expert in writing code that meets standards and delivers the desired functionality using the technology selected for the project
- Drive design reviews, define interfaces between code modules, and applies existing technology to designs.
- Be an expert in assessing application performance and optimizing/improving it through design and best coding practices
- Be an expert in core data structures as well as algorithms and has the ability to implement them using language of choice
- Be responsible for providing technical leadership and defining, developing, and evolving software in a fast paced and agile development environment using the latest software development technologies and infrastructure
- Provide guidance to a team of 5 to 7 developers with either planning and execution and/or design architecture using agile methodologies such as SCRUM
- Work with Product Line Leaders (PLLs) to understand product requirements & vision
- Write code that meets standards and delivers desired functionality using the technology selected for the project.
Desired Characteristics Technical Expertise :
- Bachelors or Masters degree in Computer Science or related discipline with strong academic credentials.
- A minimum of 8-14 years of professional experience
- Must have hands-on experience in using any pipeline/scripting languages (Groovy, Python, Bash etc.)
- Must have hands-on knowledge of container orchestration technologies like Kubernetes.
- Must have knowledge of cloud service providers, like AWS, Azure.
- Must have proficiency in developing Continuous Integration/ Delivery pipelines using Jenkins.
- Must have hands-on experience in component build and packaging metadata such as Maven
- Highly desired to have knowledge on static code analysis tools like Coverity and Vulnerability scanning tools like JFrog X-ray.
- Good to have working knowledge on databases like Postgresql.
- Good to have working knowledge on deploying and supporting business intelligence/reporting tools like Superset.
- Good to have knowledge on metric technologies like Prometheus, Grafana
- Good to have knowledge on EFK Stack
- Good to have on tool like Jira, Confluence, and static code analysis tools like Coverity
- Good to have knowledge with service discovery/mesh such as Istio
Business Acumen:
- Strong problem-solving abilities and capable of articulating specific technical topics or assignments
- Experience in maintaining scalable and highly available distributed systems
- Expert in breaking down problems and estimate time for development tasks
- Evangelizes how our technology solves customer problems from a technology and business perspective.
Leadership:
- Demonstrates clarity of thinking to work through limited information and vague problem definitions
- Influences through others; builds direct and "behind the scenes" support for ideas
- Proactively identifies and removes project obstacles or barriers on behalf of the team
- Shares knowledge, power, and credit, establishing trust, credibility, and goodwill
Personal Attributes :
- Able to work under minimal supervision
- Excellent communication skills and the ability to interface with senior leadership with confidence and clarity
- Able to work well with global teams, including time-zone flexibility
- Skilled in providing oversight and mentoring team members. Shows ability to effectively delegate work
Additional Information Relocation Assistance Provided: Yes