Jobskey Consultancy
New York / Global
You have blocked notifications
Oops! You have blocked notifications. Click here for more info
You have blocked notifications, please check your browser settings.
You're currently subscribed to job notifications
Subscribe to notifications
You will no longer receive notifications
New York / Global
Sr. Java Developer New York, New York, United States
Job Summary The Software Development Team is responsible for designing and building the software products for Client exchange. The Development team operates in as much of a collective devops manner as is possible for a regulated industry. Developers are also responsible for production support and a test first approach to development and bug fixes as well as managing and maintaining the build and automated testing environments. This role will be expected to take on leadership elements within the team leading commercial and internal projects and leading small teams of developers as well as the core responsibilities of writing new software and maintaining our process, performance and testing standards.
Requirements 8 - 12 Years of Relevant Experience
Core:
Develop and maintain knowledge of Client domain and related financial markets and use this knowledge to challenge, refine and focus product direction
Maintain and extend knowledge of and skills in relevant technologies including those developed within Client and by third parties
Adopt prevailing Client development process and practises including pairing and rotation
Help ensure the team remains motivated by promoting a positive attitude and sense of fun
Strive to achieve annual performance review goals as agreed
Maintain and extend the automated test suite to maximise the coverage and value of testing while balancing use of available time and resources
Design, develop and test software components to exacting technical and performance standards while actively avoiding and where possible reducing technical debt
Apply greater experience to guide team decision making and accelerate problem solving
Act as an example to colleagues in terms of technology skills and process adherence
Provide mentoring to team members and other colleagues on technology or process matters
Measure, investigate and optimise software and technical performance in both normal operation and in the case of degraded service
Provide constructive feedback on colleagues and probationers
Participate equitably in development team shared responsibilities and rotas including recruitment, production support, providing developer support for releases and out of hours on-call support
Mainstream:
Actively share knowledge and skills with colleagues through brown bags, intranet, etc.
Identify, escalate and where possible mitigate potential risks that might impact delivery or the team
Promote a culture of uncompromising high standards for delivery where shortcuts are avoided and team members recognise it as normal to do the right thing
Engage in Client technical PR e.g. occasional blogging or external talks
Provide any relevant feedback whether positive or negative directly to team members as early as possible
Work with Business Analysts and Business Stakeholders to help identify, define and elaborate functional and non-functional requirements for epics and user stories
Work with Business Analysts to iteratively design solutions and formulate risk aware approaches for their delivery
Contribute to innovation, maintenance and extension of Client processes, tools and technologies
Once More Advanced Into The Role:
Develop and maintain an in-depth understanding of the domain, architecture and a significant subset of the codebase
Develop, maintain and share in depth technology expertise in one or more areas
Provide leadership and management input on technology strategy and risk management
Drive innovation in technology, tools or processes
Instigate and progress relevant improvement initiatives
Play an active part in influencing the formulation and adoption of processes and best practises
Establish and maintain a technology reputation beyond Client by regular blogging and/or regular external talks at prominent events
Participate in and contribute to Client open source initiatives
Identify, diagnose and resolve software defects and production issues providing fixes or workarounds as necessary and mitigating or remediating any associated impact
Measure, investigate and optimise software and technical performance in both normal operation and in the case of degraded service
Participate equitably in development team shared responsibilities and rotas including recruitment, production support, providing developer support for releases and out of hours on-call support
Contribute to the on-going improvement of the overall system design and architecture
Develop and maintain a broad understanding of the codebase that is also deep in some areas
Develop and share subject matter expertise in one or more technology, tooling or business domain areas
Play a part in recruitment including some line management responsibilities from time to time
Our Tech Stack Backend: distributed, event-driven core Java (90% of the code base), MySQL
Frontend: Javascript, Vue.js
Data analytics: Python & Jupyter notebooks, Parquet, Docker
Blockchain integrations: Bitcoin (& Litecoin, Bitcoin Cash), Ethereum and XRP (Ripple)
Testing: JUnit, Mockito, JMH, JCStress, Jenkins, Selenium, many in-house tools...
OS: Linux (CentOS)
Or refer someone
, United States / Global
New York / Global
, United States / Global
, United States / Global
, United States / Global