Senior Software Engineer

Royal Caribbean Cruises LtdMiami, FL
29dOnsite

About The Position

The Senior Software Engineer will be responsible for developing, improving, testing, and maintaining various digital products and solutions using multiple programming languages. This role supports Royal Caribbean Group's ambitious decarbonization and energy optimization strategy. Additionally, the Senior Software Engineer will mentor other data and software engineers, take a lead role in software design, conduct code reviews, engage in technical planning, oversee quality control, and provide general guidance on all aspects of the Software Development Life Cycle (SDLC).

Requirements

  • Bachelor’s degree in computer science/ computer engineering/ management information systems / software engineering or other relevant field from an accredited institution
  • 5-7+ years of experience in Web/ Enterprise application development, relevant to the requirements of this roles.
  • Cross-functional communication skills
  • Highly motivated, curious, collaborative, and innovative
  • Well organized, with an eye for detail and quality
  • Experienced in leading projects and/ or people with high degree of independence
  • Hands-on experience with Enterprise and Web application development
  • C#, .NET, SQL Server, HTML, CSS, JavaScript, Python
  • Experience setting up and configuring application environments (i.e. Azure, AWS)
  • Experience writing technical design specifications
  • Experience designing database architectures and development on SQL and NoSQL
  • Experience in creating data driven web user interfaces
  • Experience with Git
  • Familiarity with modern SDLC Agile principles and frameworks

Nice To Haves

  • Knowledge of maritime technology and operations or other relevant domains (energy, engineering, logistics, sustainability…) is an advantage, but is not required for this role

Responsibilities

  • Lead the design, development, and modification of software systems using various programming languages, ensuring alignment with service architecture principles.
  • Supervise the modification of existing software to correct errors, enhance overall quality and functionality, and improve integrations with other systems.
  • Provide strategic technical leadership and guidance to the development team, ensuring they produce high-quality code while assisting the PO and PM in making sound strategic decisions.
  • Mentor and coach software engineers and other team members involved in programming tasks, supporting their professional development and career advancement.
  • Lead and conduct thorough design and code reviews to ensure adherence to best practices and maintain high standards of quality.
  • Oversee and manage the estimation of delivery timelines for software projects, ensuring realistic and achievable deadlines.
  • Lead and actively participate in daily standups, backlog refinement, and release planning meetings, fostering a collaborative and productive team environment.
  • Translate complex business requirements and specifications into practical, scalable software solutions, ensuring technical feasibility and alignment with business goals.
  • Collaborate closely with the Product Owner to analyze user needs, determining whether to develop new software or modify existing solutions to meet those needs.
  • Manage and execute the software deployment process, ensuring smooth and efficient rollouts.
  • Develop, maintain, and oversee the implementation of automated testing procedures, solutions, and frameworks to ensure the highest levels of software quality.
  • Lead the understanding and management of the capabilities and limitations of data outputs from software, ensuring effective data utilization.
  • Assist in managing and understanding the technical infrastructure of applications or systems, ensuring stability and performance.
  • Lead the troubleshooting of performance and functionality issues, providing quick and effective resolutions.
  • Anticipate potential blockers, delays, and cost overruns within projects, communicating these issues proactively to prevent escalation.
  • Ensure clear and consistent communication of timeline and scope expectations to the team and external stakeholders, fostering transparency and alignment.
  • Lead efforts to identify and address security vulnerabilities in the code, ensuring robust and secure software solutions.
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service