Experience: Undergraduate Juniors up to Masters’ students
Education: Currently pursuing Bachelor's or Master's degree in a rigorous Computer Science, Computer Engineering, or other highly-technical field of study
Position Type: 10 Weeks
PDT Partners – a quantitative investment manager - is seeking talented engineering students for Software Engineering focused internships. Our custom-designed program enables students to contribute to our technology-critical, algorithmic trading business while honing their technical skills.
Students will work closely with highly accessible and supportive senior developers for every project. Mentors are deeply technical hands-on developers who provide guidance during the project, and they are available for design sessions, discussions, and learning throughout the program.
The program's social events - PDT summer picnic, movie nights, ice cream social, bowling night, Yankees/Mets games, board game nights, foo-centric activities, and access to variety of affinity groups all provide excellent opportunities to get to know our team. Even in the instance of a remote internship, we make sure to plan regular events to build a strong sense of camaraderie.
PDT is a fun and collaborative community of passionate engineers, science fiction fans, musicians, martial artists, extreme-sports enthusiasts, volunteers, and foodies who enjoy a non-hierarchical, professional environment. Diversity, Equity, and Inclusion and Philanthropy are part of the fabric of our firm. Part of why we’re able to maintain our unique culture is because we’re committed to hiring kind people, maintaining a community that fosters a sense of belonging, and using our good fortune to help others outside of PDT.
Most of our software is developed in-house for our algorithmic trading business: off-the-shelf solutions simply don't scale to our needs. You will work closely with expert developers on technically-challenging projects to design, develop, debug, and test our software components for large handling of financial data, real-time events, and batch processing.
Depending on the specific project, you may:
- Work on projects that require client and server-side implementation
- Face problems that don't have well-defined solutions - creativity is essential to come up with the best possible answers, including ones that explore new technologies
- Learn about the financial markets, risk metrics, and portfolio management
- Navigate various trading technologies like FIX messaging and order management systems
- Construct, maintain, and analyze large-scale data sets
You will also learn to correctly apply new idioms, techniques, and algorithms in the following areas:
- Program correctness (resource management, exception safety, reentrancy/thread safety)
- Maintainability (portability, good coding practices, adherence to coding standards, unit testing, documentation)
- Efficiency (optimal data structures/algorithms, understanding of high-/low- level implications and trade-offs in design choices, parallelization)
Ideal candidates have the following knowledge and/or wish to learn more about:
- Distributed computing
- Multi-threaded programming
- Scientific Programming
Additional skills & attributes required:
- Interest in working in a world-class, professional environment
- Smart, fast-learner, intellectually curious, problem-solving approach
- Can-do attitude, with sense of urgency
- Strong verbal and written communication skills
- Committed to improvement and keen to apply constructive feedback
- Excellent academic background from a rigorous and challenging computer science program