Your Opportunity
We are looking for an experienced and talented Java Developer to join the team on the industry-leading active trading platform thinkorswim. In this position, you will work closely with other development teams to deliver real-time market data, charts, alerts, and orders to millions of users of the thinkorswim Web platform.
This position requires a self-motivated individual with strong problem-solving skills who can contribute in a highly distributed, collaborative team environment.
What you are good at:
* High-complexity product design exercises which require extensive research and analysis.
* System design and specification development, program logic and flow-charting, testing, debugging, and documentation.
* Making design choices to be used by the development teams.
* Complex programming tasks and review of development tasks and documentation.
* Technical problem analysis and solutioning.
* Working with Enterprise Architecture & Infrastructure teams on strategic designs and initiatives.
* Leading the troubleshooting of complex problems in development and production environments.
* Serving as a technical lead in a fast-paced environment.
What you have
Required Skills:
* 7+ years of Java
* 5+ years with OOA/OOD, distributed systems/software, real time processing, relational database systems & messaging systems preferred
* Experience with concurrency & multi-threading
* Experience with scaling, Java Garbage Collection, and performance tuning preferred
* Understanding of data structures, algorithms and design patterns (GoF)
* Experience with agile, test-driven development
* Experience with application development frameworks such as Spring
* Experience with Linux
* Experience with build, deploy and test automation tools like Ant, Gradle, Maven, Jenkins, TeamCity, Junit, TestNG, JaCoCo or similar tools
* Demonstrated experience working with core business logic within applications
* Experience in developing APIs and Frameworks
* Excellent written and verbal communication skills
* Bachelor's degree in computer science or equivalent discipline
Personal Characteristics:
* Excellent written communication, presentation and facilitation skills
* Self-starter: takes initiative and can work independently
* Well-organized and disciplined with high attention to detail
* Flexible and adaptable working with various business domains
"In addition to the salary range, this role is also eligible for bonus or incentive opportunities."