Develop high quality Java code; Perform requirements analysis; Communicate with project stakeholders; Design project or component level architectures; Technical mentoring for younger team members (code reviews, pair programming) Design deployment pipelines and CI/CD processes;