Skip to main contentA logo with &quat;the muse&quat; in dark blue text.

Senior Software Developer (Java Back-End)

AT IBM
IBM

Senior Software Developer (Java Back-End)

Lisbon, Portugal

Introduction
We are seeking several skilled senior back-end developers to join our IBM Software teams that own the back-end services of our product. As part of our team, you will be responsible and accountable for developing and maintaining high-quality software products, working with various technologies. We provide large worldwide enterprises with robust data governance solutions. You will contribute to taking IBM® Manta Data Lineage to a new level, and help our customers determine data flow throughout their models and systems by increasing their data pipeline transparency.

Your Role and Responsibilities

Your main duties will include taking the lead in designing and implementing new features, optimizing and maintaining existing code, and ensuring the software meets high-quality standards through testing, debugging, static code analysis, and security vulnerability scanning. As a senior software developer, you have the experience to identify risks and propose mitigation actions when it comes to software delivery and architecture. You will also work closely with other developers, designers, architects, QA engineers, DevOps, and product managers to ensure the software meets user needs.

Want more jobs like this?

Get Software Engineering jobs in Lisbon, Portugal delivered to your inbox every week.

By signing up, you agree to our Terms of Service & Privacy Policy.


What you'll do as part of the role:

  • Work with the architects and tech leads on the architecture, design, and implementation of the lineage platform's complex functions and components.
  • Lead and supervise reasonably large development initiatives and improvements, actively cooperate with the product manager to deliver true customer value.
  • Write clean, stable, extensible, unit-tested code.
  • Provide thorough code reviews to ensure top-notch code quality.
  • Assist the more junior colleagues in the team with the designs and implementation so they can learn and grow.
  • Use continuous integration (Jenkins), and source code management (GitHub)
  • Diagnose and fix customer issues on the target environments with the L2 support team.
  • Create/maintain technical documentation.

Required Technical and Professional Expertise

  • Excellent problem-solving skills, able to work independently and as part of a team.
  • Consolidated experience with good autonomy in Java, Spring/Spring Boot/J2EE, microservices architecture, and building RESTful APIs using different frameworks.
  • Exposure to CI&CD practices (Jenkins / Tekton, etc.)
  • Good understanding of modern containerization (Docker, Kubernetes, OpenShift Container Platform, etc).
  • Communication skills and ability to work collaboratively with cross-functional teams.

Preferred Technical and Professional Expertise

  • Bachelor's degree in Computer Science (or equivalent), or relevant background
  • Experience (or willingness) to work in a corporate software development environment
  • You can plan and estimate medium sized projects involving multiple colleagues
  • You understand the development process very well and are eager to suggest improvements
  • Nice to have: Relevant experience with profiling and JVM optimization techniques
  • Nice to have: Experience with syntactic and semantic analysis and parsers (ANTLR)
  • Nice to have: Knowledge of DWH, BI tools, ETL tools, data governance solutions
  • Nice to have: Experience with supporting production software and providing L3 support

Client-provided location(s): Lisbon, Portugal
Job ID: IBM-20694193
Employment Type: Full Time

Company Videos

Hear directly from employees about what it is like to work at IBM.