Company Profile
Since year 2003, Oceaneeringās India Center has been an integral part of operations for Oceaneeringās robust product and service offerings across the globe. This center caters to diverse business needs, from oil and gas field infrastructure, subsea robotics to automated material handling & logistics.Our multidisciplinary team offers a wide spectrum of solutions, encompassing Subsea Engineering, Robotics, Automation, Control Systems, Software Development, Asset Integrity Management, Inspection, ROV operations, Field Network Management, Graphics Design & Animation, and more.In addition to these technical functions, Oceaneering India Center plays host to several crucial business functions, including Finance, Supply Chain Management (SCM), Information Technology (IT), Human Resources (HR), and Health, Safety & Environment (HSE).Our world class infrastructure in India includes modern offices, industry-leading tools and software, equipped labs, and beautiful campuses aligned with the future way of work. Oceaneering in India as well as globally has a great work culture that is flexible, transparent, and collaborative with great team synergy.At Oceaneering India Center, we take pride in āSolving the Unsolvableā by leveraging the diverse expertise within our team. Join us in shaping the future of technology and engineering solutions on a global scale.
Position Summary
We are seeking a proactive and enthusiastic Application Software Engineer to join our dynamic software team. This role is ideal for a fresher with a strong foundation in programming languages such as C++, Java, and Python, as well as a basic understanding of front-end development and testing. As a Software Developer, you will have the opportunity to work on a variety of projects and enhance your technical skills. Working in a multidisciplinary team you will be responsible for making sure that the software systems meet the customer specifications and work within their site constraints.
ESSENTIAL
Duties And Responsibilities
- Design, develop, and maintain server-side software systems and APIs.
- Write efficient, scalable, and maintainable code using C++, Python, and Rust (Optional)
- Extensive design and development skills in C++ 11. Having knowledge of C++ 14/C++17 will be added advantage.
- Thorough knowledge of the standard library, STL containers, and algorithms
- Solid understanding of complexity theory (big-O) of algorithms in general, and how the C++ containers fit in
- Understanding of performance tuning (w.r.t time/space) and how to do performance analysis and optimization.
- Experience in multi-threaded software development
- Excellent knowledge of Synchronization objects (Mutex, Semaphore, condition variables, etc) including their appropriate use cases and distinctions
- OpenCV, CUDA, PCL, and experience with Image processing / Computer Vision is a plus.
- Experience with one or more of docker, podman, and Kubernetes is a plus.
- Experience with middleware such as MQTT, DDS, ROS, ROS2 is a plus.
NON-ESSENTIAL
- Carry out additional duties as assigned.
Qualifications
REQUIRED
- Bachelor / Master degree, preferably in Computer Science, Automation Technology or Information Technology;
- 0-1 yearsā of experience in writing application software for technical applications;
- Understanding of networking hardware and software including UDP and TCP;
- Ability to read, understand, debug and modify existing product code;
- Experience with writing requirements, design documentation, and test cases
- Ability to read, understand, debug, and modify existing product code
DESIRED
- Experience with programming in Linux; (tool chains, IDEās, etc.);
- Experience with versions control systems, preferably githib;
- Knowledge of object-oriented analysis & design methodologies and design patterns;
- Experience with programming in Java, Python;
- Experience with XML and web services;
- Proficiency in C++, Java, and Python programming languages.
- Basic understanding of front-end technologies such as HTML, CSS, and JavaScript.
- Familiarity with software testing principles and practices.
Knowledge, Skills, Abilities, And Other Characteristics
- Ensures that important information from management is shared with employees and others as appropriate
- Gives and receives constructive feedback
- Ensures that regular consistent communication takes place within area of responsibility
- Self-motivated, confident and passionate
- Provides vision and inspiration to peers and subordinates.
- Able to make decisions in conflicting situation
- Should be comfortable with ambiguity.
- Able to set priorities in a fast-paced, rapidly changing environment.
How To Apply
Oceaneeringās policy is to provide equal employment opportunities to all applicants.
How To Apply
Regular full-time employees who apply will be considered along with external candidates. Employees with less than six months with their current position are not eligible to apply for job postings. Please discuss your interest in the position with your current manager/supervisor prior to submitting your completed application. It is highly recommended to apply through the PeopleSoft or Oceanet portals.
How To Apply
In addition, we make a priority of providing learning and development opportunities to enable employees to achieve their potential and take charge of their future. As well as developing employees in a specific role, we are committed to lifelong learning and ongoing education, including developing people skills and identifying future supervisors and managers. Every month, hundreds of employees are provided training, including HSE awareness, apprenticeships, entry and advanced level technical courses, management development seminars, and leadership and supervisory training.We have a strong ethos of internal promotion. We can offer long-term employment and career advancement across countries and continents.Working at Oceaneering means that if you have the ability, drive, and ambition to take charge of your future-you will be supported to do so and the possibilities are endless.