Job responsibilities
- Maintain existing applications – with emphasis on the Java-based code bases
- Design, Develop, Test, Deploy and Maintain new features into existing services using Java, Python and optionally JavaScript/TypeScript
- Maintain deployment and testing jobs that integrate into firmwide SLDC tooling
- Maintain proper documentation and share knowledge with other team members
- Stay on top of technology rules, firm requirements, trends and best practices to ensure that code is future-friendly.
- Engage with project managers, business analysts, developers, testers, and product owners to ensure that deliverables are implemented in timely fashion
- Support platforms owned by the team
- Help grow junior talent by helping others and holing them accountable for individual contributions
Required qualifications, capabilities, and skills
- Formal training or certification on software engineering concepts and 5+ years applied experience.
- Strong engineering experience, focusing on Java, Spring, Python and Web Technologies
- An ability to effectively communicate concepts and ideas to team members and clients, as well as ability to adapt to client cultures and work environments
- A desire to work with a variety of technologies, and passion for driving quality and improving the productivity of the software development lifecycle
- Strong design, coding, testing (including Unit Tests) and debugging skills
- Experience with a variety of testing methodologies, including API Testing, Integration Testing, Behavior Driven Development, and Test Driven Development
- Knowledge and benefits of Services and API layer development and testing
- Some understanding of web technologies (e.g. HTTP, XML, REST, HTML, etc…)
- Experience in continuous integration tools such as Jenkins/Team City, version control such as BitBucket/Stash (Git)
- A very good understanding of Service Virtualization & Mock Service
Preferred qualifications, capabilities, and skills