The Next Generation.....

Backend Software Engineer

We are looking for a passionate Software Engineer to design, develop software solutions for the international growing cruise industry. Our Backend Software Engineer responsibilities include gathering user requirements, defining system functionality and writing code in various languages, like Java, or .NET programming languages (e.g. C++ or JScript.NET.) Our ideal candidates are familiar with the software development life cycle (SDLC) from preliminary system analysis to tests and deployment.
Ultimately, the role of the Software Engineer is to build high-quality, innovative and fully performing software that complies with coding standards and technical design.

Responsibilities:
  • Execute full software development life cycle (SDLC)
  • Develop flowcharts, layouts and documentation to identify requirements and solutions
  • Write well-designed, testable code
  • Produce specifications and determine operational feasibility
  • Integrate software components into a fully functional software system
  • Develop software verification plans and quality assurance procedures
  • Document and maintain software functionality
  • Troubleshoot, debug and upgrade existing systems
  • Deploy programs and evaluate user feedback
  • Comply with project plans and industry standards
  • Ensure software is updated with latest features
  • Integration of user-facing elements developed by a front-end developers with server side logic
  • Building reusable code and libraries for future use
  • Optimization of the application for maximum speed and scalability
  • Implementation of security and data protection
  • Design and implementation of data storage solutions

Qualifications:
  • Basic understanding of front-end technologies and platforms, such as JavaScript, HTML5, and CSS3
  • Good understanding of server-side CSS preprocessors, such as LESS and SASS
  • Creating database schemas that represent and support business processes
  • Proficient understanding of OWASP security principles
  • Understanding differences between multiple delivery platforms such as mobile vs desktop, and optimizing output to match the specific platform
  • Management of hosting environment, including database administration and scaling an application to support load changes
  • Data migration, transformation, and scripting
  • Outputting data in different formats
  • Implementing automated testing platforms and unit tests
  • Proficient knowledge of a back-end programming language, Java, .NET, JavaScript
  • Proficient understanding of code versioning tools, such as Git
  • Highly proficient in both spoken and written English
  • Strong understanding of the agile methodology