Description
Fleet Patching and Provisioning is a team whose purpose is to develop a software lifecycle management solution and help standardize patching, provisioning, and upgrade of your standard operating environment. Additionaly, the team is also responsible of the development of the product Zero Downtime Migration that is a solution to migrate customers from onpremises to the Oracle Cloud Infrastructure (OCI).
Preferred Qualifications
BS degree in Computer Science
Proven English skills (at least CEFR B2 or C1 level, or equivalent)
Strong problem solving, debugging and analytical skills
Proven knowledge and exposure to data structures, theory of algorithms, OOP, SDLC, STLC, SOLID
Proven knowledge of operating systems, networks, compilers and databases.
Proficiency in two or more OOP Programming Languages including Java and other
Experience with IO, streams, collections, generics, multithreading
For Java, experience with Java Persistence API (JPA), Java Native Interface (JNI), Java Remote Method Invocation (RMI)
Experience with Linux as advanced user and capable to do Shell Scripting
Experience with software versioning tools such as git or svn
Exposure to SQL concepts such as queries, database joins types, etc.
Working knowledge of Oracle Databases and MySQL is a plus
Knowledge of REST principles, idempotency, HTTP methods is a plus
Knowledge of perl, PL/SQL, JUnit and Agile methodologies is a plus
Positive attitude and with advanced team player skills
Very good communication skills
Responsibilities
Participate in the research and develop of enhancements to the product as required
Participate in the troubleshooting and debugging of code for the assigned bugs and customer incidents and escalations
Provide resolution and code fixes to assigned bugs
Deliver the required code on time and with high quality
Follow up, adjust and obtain the approval for code reviews
Perform quality assurance to the code and design the required tests
Participate of the code reviews to other team members
Merge the code and become responsible for any additional fixes required
Work on the assigned tasks until the completion or escalate appropriately
Collaborate with other teams and maintain a clear and fluid communication and debug software programs for databases, applications, tools, networks etc.
As a member of the software engineering division, you will assist in defining and developing software for tasks associated with the developing, debugging or designing of software applications or operating systems. Provide technical leadership to other software developers. Specify, design and implement modest changes to existing software architecture to meet changing needs.