Perform analyses of system and coding needs to identify the problems encountered and propose solutions including program specifications.
Develop system specifications, code, modify, test and debug computer programs under general supervision, in accordance with established planning and deadlines.
Master the technical and business features of the system to be able to explain them to other colleagues, while interacting effectively with users.
Translate requirements into technical specifications / software components.
Organize and manage production sessions.
Ensure the design and modeling of programmatic solutions for complex problems achieving documented functional and non-functional requirements.
Review design as part of deliverables (Code and Design Quality).
Develop and support complex components.
Support and guide the project team in development activities to ensure the quality of the code delivered while meeting project deadlines.
Write unit and integration tests for each function in which development is required.
Participate in the implementation of regression testing strategies to improve the stability of the application components.
Provide support and maintenance for the application and resolve complex anomalies.
What you bring to the table:
Undergraduate degree in Computer Science or any combination of equivalent education and experience.
6-9 years of development experience.
Ability to analyze and synthesize data.
Initiative and ability to work under pressure.
Can work in a team and detail oriented.
You have 5+ years of software design and development experience involving n-tier web applications using Java, Java-based application frameworks, JavaScript and JavaScript frameworks.
You have 4+ years of experience building server-side apps using Java 11+, Spring Boot and creating web services or APIs using REST. You have a great level of Object-Oriented Analysis and Design experience.
You have 3+ years of front-end development experience with Angular 8+, Typescript, HTML 5 and CSS 3.
You have the knowledge and awareness about Service Oriented Architecture, experience in microservices, event-driven implementation using Kafka.
Strong knowledge of UX design and principles.
You have experience with PL/SQL, and NoSQL databases such as MongoDB or Elasticsearch.
A good level of experience in these relevant areas is preferred:
Source control using GitHub.
Coding using IntelliJ, WebStorm (or Visual Studio Code).
Angular Material UI component library.
Build automation using Maven (and/or Gradle).
Testing using JUnit, Mockito, Jasmine / Jest, Postman / SoapUI.
Code quality using SonarQube, FindBugs, CheckStyle.
Software packaging using docker containers.
Deploying into OpenShift/Kubernetes.
End-to-end application performance analysis and optimization.
Collaborating in an Agile Scrum/Kanban environment.
Nice to have knowledge/experience: Git Co-Pilot, Dynatrace, Kibana.