Descrição da Vaga
Applies developed subject matter knowledge to solve common and complex business issues within established guidelines and recommends appropriate alternatives. Works on problems of diverse complexity and scope. May act as a team or project leader providing direction to team activities and facilitates information validation and team decision making process. Exercises independent judgment within generally defined policies and practices to identify and select a solution. Ability to handle most unique situations. May seek advice in order to make decisions on complex business issues.
- Designs enhancements, updates, and programming changes for portions and subsystems of end-user applications software running on local, networked, and Internet- based platforms.
- Analyzes design and determines coding, programming, and integration activities required based on general objectives and knowledge of overall architecture of product or solution.
- Writes and executes complete testing plans, protocols, and documentation for assigned portion of application; identifies and debugs, and creates solutions for issues with code and integration into application architecture.
- Leads a project team of other software applications engineers and internal and outsourced development partners to develop reliable, cost effective and high quality solutions for assigned applications portion or subsystem.
- Collaborates and communicates with management, internal, and outsourced development partners regarding software applications design status, project progress, and issue resolution.
- Represents the software applications engineering team for all phases of larger and more-complex development projects.
- Provides guidance and mentoring to less- experienced staff members.
Education and Experience Required:
- Bachelor's or Master's degree in Computer Science, Information Systems, or equivalent.
- Typically 4-6 years experience.
Knowledge and Skills:
- Using software applications design tools and languages.
- Strong analytical and problem solving skills.
- Designing software applications running on multiple platform types.
- Software applications testing methodology, including writing and execution of test plans, debugging, and testing scripts and tools.
- Excellent written and verbal communication skills; mastery in English and local language. Ability to effectively communicate product architectures, design proposals and negotiate options at management levels.
Specific Knowledge and Experience Skills for the position:
* Experience on designing and implementing Restful architecture (RestAPI)
* Experience on Java, microservices and distributed systems
* Experience on Cloud platforms (AWS, Google GCP or similar)
* Experience in script languages (Python, Shellscript or similar)
* Experience on RDBMS (MySQL, Oracle or similar)
* Experience on Agile and Scrum methodologies
* Experience on working with distributed and global teams
* Experience with version control tools, CI/CD tools, unit test and test automation (git, Jenkins, JUnit)
* Excellent written and verbal communication skills in English
* Experience on distributed and global teams.