Descrição da Vaga
Applies intermediate level of subject matter knowledge to solve a variety of common business issues. Works on problems of moderately complex scope. Acts as an informed team member providing analysis of information and limited project direction input. Exercises independent judgment within defined practices and procedures to determine appropriate action. Follows established guidelines and interprets policies. Evaluates unique circumstances and makes recommendations.
- Designs limited 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 specific objectives and established project guidelines.
- Executes and writes portions of testing plans, protocols, and documentation for assigned portion of application; identifies and debugs issues with code and suggests changes or improvements.
- Participates as a member of 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 internal and outsourced development partners regarding software applications design status, project progress, and issue resolution.
Education and Experience Required:
- Bachelor's or Master's degree in Computer Science, Information Systems, or equivalent.
- Typically 2-4 years experience.
Knowledge and Skills:
- Using software applications design tools and languages.
- Ability to apply analytical and problem solving skills.
- Designing software applications running on multiple platform types.
- Software applications testing methodology, including execution of test plans, debugging, and testing scripts and tools.
- Strong written and verbal communication skills; mastery in English and local language.
- Ability to effectively communicate design proposals and negotiate options.
- Familiarity with Web languages, protocols and tools (with Model-View-Controller)
- Experience in Object Oriented design
- Understanding of Agile methodologies
Knowledge and Skills (desired):
- Knowledge of Ruby, Rails, Python
- Database querying and design
- Pair Programming/ XP development
- Test-Driven-Development, Unit Test
- Jenkins, Chef, Git