Java Software Developer
Software Developer (Java) Job Description For Headlands TechLocations: Amsterdam; Chicago; London; New YorkScopeAs a Java software developer at Headlands Tech, you will work in close collaboration with the research, systems, and operations teams to design, engineer, implement, and maintain the Firm’s software written in Java programming language. You will play a key role in designing and constructing the Firm’s software infrastructure to support new and existing lines of business. You will expand the Firm’s proprietary research platform to improve performance and support new exchanges, products and functionality.QualificationsPreferred degree in any computing related area (e.g., computer science, computer engineering, etc.)In lieu of this, extensive professional software development experienceWell-versed in the fundamentals of software engineeringGenuine interest in solving technical problems, along with a strong ability to implement solutionsLow ego, able to work both in a collaborative team setting and autonomouslyCommitted to designing and implementing fully automated, scalable, and maintainable solutions with extensive testingComfortable operating at various levels of abstraction, from individual machines to large scale distributed systemsStrong knowledge of the details of computing all throughout the technical stackSuperior ability to write, refactor, and debug programs in JavaGood knowledge of networking and storage systemsExperience or knowledge of C++ is a plusKnowledge of Linux is a plusExperience in the trading industry is a plusDay To DayThis isn't an exhaustive list but represents a selection of the types of tasks that software developers at Headlands Tech take on while developing and maintaining a large scale 24-hour automated trading system and research framework.Maintain and extend core research infrastructureDesign, implement, and maintain distributed storage systems with various performance and reliability requirementsAddress performance limitations within our own software, open-source libraries and applications, Linux, etc.Investigate new technologies to improve stability, scalability, and performance of a distributed computing farmDevelop and improve monitoring and proactive detection capabilitiesPerform basic data analysis to support decision making and better plan for future growthImprove networking communication between different components of the system to achieve optimal latency and throughputCommunicate with stakeholders across teams to understand needs and define application specificationsConduct code reviews of other developers, researchers and operations team membersParticipate in the recruitment process by conducting interviews and providing candidate evaluationsWe are proud to be an equal opportunity workplace and to provide employees with a work environment free of discrimination and harassment. All employment decisions at Headlands Tech are based on business needs, job requirements and individual qualifications, without regard to race, color, religion or belief, national origin, sex, sexual orientation, gender identity/expression, age, status as a protected veteran, status as an individual with a disability, or any other applicable legally protected characteristics. Headlands Tech will not tolerate discrimination or harassment based on any of these characteristics.By completing this application you agree to our GDPR and Privacy Policies.