What you’ll be doing:
- Write well defined and tested code for better maintainability and performance.
- Document work and engage in quality testing/validation for changes or improved features before releasing to the customer,
- Maintain and improve existing codebases and peer review code changes.
- Software Development craftsmanship - Code Quality, Automated Testing, and Agile best practices
- Solve complex problems around connected vehicle technology.
- Solve challenging distributed systems problems around scalability, reliability, low latency, high availability with TMNA.
- Document requirements and specifications
- Troubleshoot issues and debug codebases.
- Adapt new technologies, tools, processes from the organization as needed.
- Work with Product Owner’s and team members to meet all project deliverables and milestone dates.
- Communicate well with team members and suppliers and work collaboratively - Work with a cross-functional engineering teams, Platform, QA to meet all project deliverables and milestone dates.
What you bring:
- 8+ years of software engineering experience. Strong experience in developing services and applications in Java, golang or similar languages
- Recent experience in developing and managing highly available distributed applications using toolkits such as Spring Boot, Git, Docker, DevOps tools.
- Good understanding of various Design Patterns in building highly available, highly scalable distributed applications connecting a large volume of devices, serving millions of users.
- Good understanding of Security Best Practices to implement security at various levels to protect the devices & data.
- Must have Programming / Scripting Knowledge such as Java, Python, Groovy, etc.
- Expert level technical knowledge in developing cloud native applications – covering infrastructure, platform and software as services.
- AWS Technical knowledge in – API Gateway, R53, EC2, ECS, ECR, IoT, CFTs, CloudWatch, RDS/ DynamoDB, SNS/SQS, Lambda, S3 etc.
- Developing and designing REST APIs using JSON, other messaging protocols.
Added Bonus if you have:
- Experience with one or more programming languages such as: JavaScript and/or Golang
- Experience designing and implementing large scale distributed systems.
- Very good problem-solving skills with knowledge of algorithms, data structures, and complexity analysis.
- Familiarity with Agile/Scrum methodology.
- Strong analytical and reasoning skills.
- Ability to communicate well with team and other technical stakeholders for implementation.
- Ability to work in fast paced teams with quick decision making.
Additionally, please score your candidates from 1-10 in the following areas:
- Technical Skills (as per JD above)
- Communication / soft skills
- Toyota experience
- Citizen/ Visa
- Management Experience / people management