Skip To Main Content
backBack to Search

Senior Java Developer

Office in Portugal: Distrito de Lisboa, Lisbon
Java
& 4 others

We are seeking an experienced Senior Java Developer to join our innovative team and contribute to creating high-quality software solutions.

In this role, you will be responsible for designing, developing, and maintaining Java-based applications while ensuring adherence to industry standards and organizational guidelines.

Responsibilities
  • Take ownership of software delivery tasks, including code development, testing, and deployment at the application/component level
  • Collaborate in team prioritization discussions with product and business stakeholders
  • Analyze, troubleshoot, and refactor existing codebases
  • Embrace the use of new programming languages and architectural patterns to meet project needs
  • Shape technical decisions made by the team to align with long-term goals
  • Provide mentorship and guidance to peers and less experienced team members
  • Contribute to technical discussions within engineering communities and initiatives
  • Create clear and precise documentation for APIs and services delivered
Requirements
  • 3+ years of experience writing secure code in Java
  • Knowledge of secure coding standards, including OWASP, CWE, and SEI CERT
  • Proficiency in git-based workflows, including standard branching strategies (e.g., GitFlow) and peer review processes
  • Capability to utilize tools like Sonar, Zally, and Checkmarx for code quality analysis and pattern detection
  • Background in creating and executing unit, service-level, and integration tests to ensure functional coverage
  • Familiarity with design patterns such as factory, adapter, singleton, composite, observer, and strategy
  • Understanding of requirement analysis, effort estimation, and prioritization processes to deliver value to stakeholders
  • Experience with SDLC practices like Waterfall, Scrum, Kanban, or SAFe, and insight into their appropriate use
  • Expertise in engineering principles critical for software delivery, including security, testing, user experience, operability, and simplification
  • Experience with diverse application patterns, such as APIs, event-driven services, batch processing, web applications, and big data solutions
  • Competency in CI/CD methodologies and tools, including automation processes, pipelines, containerization, and virtualization
  • Skills in scripting and automation using Java or other languages, like Python, Bash, Perl, or Ruby
  • Knowledge of various testing types, both functional and non-functional, as well as experience in estimating test efforts
Benefits
  • International projects with top brands
  • Work with global teams of highly skilled, diverse peers
  • Healthcare benefits
  • Employee financial programs
  • Paid time off and sick leave
  • Upskilling, reskilling and certification courses
  • Unlimited access to the LinkedIn Learning library and 22,000+ courses
  • Global career opportunities
  • Volunteer and community involvement opportunities
  • EPAM Employee Groups
  • Award-winning culture recognized by Glassdoor, Newsweek and LinkedIn