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 pace 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
Required Qualification
Bachelor's Degree in Computer Science or “STEM” Majors (Science, Technology, Engineering and Math) with advanced experience.Able to legally work in Mexico. This position can work remotely only within Mexico.Effective written and oral communication skills in English and Spanish.Strong Java programming experienceHands-on experience in utilizing Spring Framework (Core, MVC, Integration and Data)Experience in Application development - Java Spring PlatformDesired Characteristics:
Strong knowledge of Object-Oriented Analysis and Design, Software Design Patterns and Java coding principlesHands-on experience in web services (REST, SOAP, WSDL etc.), using Apache Commons Suite & Maven, SQL Database such as Oracle MySQL, PostgreSQL etc.Experience developing mission-critical enterprise softwareExposure to Domain Driven DesignFamiliarity with Kubernetes and cloud technologies including Kafka, S3Experience with modern tooling (Jenkins, Maven, Git,)Experience with microservices and distributed systems
Business Acumen:
Leadership:
Personal Attributes:
#LI-ES1
Additional InformationRelocation Assistance Provided: No
#LI-Remote - This is a remote position