Software Engineer (Java)

Summary As a Java Software Engineer you will be responsible for implementing, developing, testing, supporting and installing our Java based solutions, including the Warehouse Management Systems and the new Insight statistics and maintenance website. Working in a multi-disciplinary team you will be responsible for making sure that the software systems meet the customer/client specifications and work within their site constraints. You should have the technical insight to create solutions that provide optimal performance. Given that we have a global customer/client base, you must be willing to travel and stay abroad for several weeks at a time, as you will be responsible for the successful installation at the customer/client site. Essential Duties and Responsibilities

  • Responsible for implementing, developing, testing and installing Warehouse Management software systems that interface with our AGV supervisor software
  • Responsible for implementing, developing, testing and installing protocol converters
  • Responsible for implementing, developing, testing and installing web based applications
  • Troubleshooting and fixing software issues
  • Writing requirements, detailed design documentation and test cases
  • Providing support for field issues
  • Continuously improving our processes and procedures to optimize development efficiency

CompetenciesTo perform the job successfully, an individual should demonstrate the following competencies:

  • Problem Solving - Identifies and resolves problems in a timely manner; Gathers and analyses information skillfully; Develops alternative solutions.
  • Technical Skills - Assesses own strengths and weaknesses; Strives to continuously build knowledge and skills; Shares expertise with others.
  • Customer Service - Manages difficult or emotional customer situations; Responds promptly to customer needs; Solicits customer feedback to improve service; Responds to requests for service and assistance; Meets commitments.
  • Analytical - Synthesizes complex or diverse information; Collects and researches data; Uses intuition and experience to complement data; Designs work flows and procedures.
  • Planning/Organizing - Prioritizes and plans work activities; Uses time efficiently; Plans for additional resources; Develops realistic action plans.
  • Professionalism - Approaches others in a tactful manner; Reacts well under pressure; Treats others with respect and consideration regardless of their status or position; Accepts responsibility for own actions; Follows through on commitments.
  • Quality - Demonstrates accuracy and thoroughness; Looks for ways to improve and promote quality; Applies feedback to improve performance; Monitors own work to ensure quality.
  • Quantity - Meets productivity standards; Completes work in timely manner; Strives to increase productivity; Works quickly.
  • Dependability - Follows instructions, responds to management direction; Takes responsibility for own actions; Keeps commitments; Commits to long hours of work when necessary to reach goals. Completes tasks on time or notifies appropriate person with an alternate plan.
  • Innovation - Displays original thinking and creativity; Meets challenges with resourcefulness; Generates suggestions for improving work; Develops innovative approaches and ideas; Presents ideas and information in a manner that gets others' attention.

Education and/or Experience Technical Bachelor degree, preferably in Computer Science, Automation Technology or Information Technology or equivalent; Minimum of 5 years experience in writing Java software. Ability to program in Java with knowledge of object oriented analysis/design/programming and design patterns. Experience with Java frameworks such as JBoss, Spring and Hibernate. Experience with full-stack web development (HTML/CSS/JavaScript) is essential, and experience with Angular, Bootstrap or Apache Tomcat desirable. Experience of data modeling and database programming essential. Language Skills Excellent written and oral communications in English are essential, and in Dutch and/or German would be advantageous. Reasoning Ability Ability to solve practical problems and deal with a variety of concrete variables in situations where only limited standardization exists. Ability to interpret a variety of instructions furnished in written, oral, diagram, or schedule form. Ability to act independently generating innovative solutions to complex solutions is desired. Computer SkillsTo perform this job successfully, an individual should have complete knowledge of Microsoft Word, Excel, PeopleSoft and Java, be proficient in Linux, and knowledgeable of the Windows Operating systems. It would also be advantageous to have knowledge of the following:

  • XML, JASON and web services
  • Web communication protocols such as REST and SOAP
  • Issue tracking systems particularly Jira
  • Versions control systems, particularly Subversion
  • Writing requirements, design documentation and test cases
  • Integrating with enterprise systems such as databases, ERP systems and factory automation systems
  • Programming in Linux
  • Programming in C, C++ and Python
  • Generating user interfaces in Java

Essential Job Functions The role requires a customer/client focused attitude, an ability to interact with customers/clients and to remain calm and professional in a demanding and dynamic work environment. The role requires willingness to travel abroad internationally for several weeks at a time during system installation. The physical demands described here are representative of those that must be met by an employee to successfully perform the essential functions of this job. Reasonable accommodations may be made to enable individuals with disabilities to perform the essential functions. Interested? Click here to send your CV to Maria