For one of our clients in the pharma industry we’re looking for a freelance Java Spring Developer: Project description
The service is requested as part of the Platform/ product CoreAPI/PeP. The Platform, that holds services, generated from incoming use cases. These services then can be consumed by new incoming use cases (as of now mobile apps, websites) to avoid multiple implementations of the same functionality.
The goal of the project is to build a platform that provides services to be consumed by various use cases to reduce reimplementation of often used features. The future aspects are services could be consumed by any other product teams, as well as it can be provided in a kind of service community warehouse.
Background to the assignment
The working mode for the product development is the agile development methodology.
All services will be coordinated iteratively between the parties within the framework of sprint meetings and implemented independently by the contractor within the sprints following the sprint meetings. The Contractor will check before each sprint meeting, on the basis of its professional opinion/skills, which individual services it considers appropriate and feasible within the scope of its commissioning in the respective sprint.
A core aspect of this methodology is that all people who are involved in a product development endeavor are self-sufficient and do not follow any instructions. The steps and ways how overarching goals are achieved can be defined by the contractor independently and individually. Due to this special combination of know-how, the external Contractor will have an outstanding position compared to the internal project staff and will perform significantly different services than the internal staff.
Developing high-quality, scalable applications in an agile and devops setup.
Maintaining and fix bugs and issues of delivered functionalities
Writing unit, integration and end-to-end tests using testing frameworks (cucumber, karma, jasmine, cypress)
Conducting code reviews on team members and reviewing application of best practices, conventions, and standards
Performing reviews for vendor and third parties’ technical assessments
Integrating third-party and services within our applications
Consulting on architectural decisions and document accordingly to team conventions
Consulting, reviewing & proposing improvements on the delivery of development and operations of products according to specified methodology and best practices in the industry to achieve a scalable codebase even with larger user-bases, and is easy to understand, maintain and extend.
Coaching, negotiate and mediate complex problems across the team. Mentoring less experienced colleagues within the team. Coaching will occur after the sprints via online 1:1 sessions.
Consulting, discussing requirements, implementation options and tradeoffs with team and stakeholders
Writing custom code to fix bugs in existing applications or adding features to new applications as needed
Communicating with other members of the development team about progress, issues, or changes that need to be made
Reviewing code written by other developers for possible bugs or security issues
Performing quality assurance testing on applications during development
Creating new applications from scratch based on design specifications provided by clients
Analyzing data to identify trends or patterns that could indicate problems with the software or identify opportunities for improvement
Recommending improvements to existing processes and procedures to streamline workflow and increase efficiency
Working with designers to create user interfaces that are intuitive and easy to use
Expert in Java with all standard set of skills.
Very strong knowledge of Spring Boot, Spring Security and other modules, Hibernate ORM and authorization/authentication services (OAuth2 standard).
Good knowledge of SQL and NoSQL databases, OpenShift Container Platform, Cloud platforms like AWS and CI/CD practice