How to Learn Programming?
College student interested in investing. I know a lot about investing, but have no programming knowledge whatsoever. How would you guys recommend learning how to program? I've seen that some HFs require hackerranks and leetcode, which surprised me.
Now with AI, it's somewhat easy to create projects and whatnot, but that wouldn't help me pass the aforementioned OAs -- which is why I took to here to ask y'all how you'd recommend learning programming nowadays to pass these (and utilize them for the job). I'm interested in macro investing (mainly discretionary) for background.
To get started with programming as a college student interested in investing, here's a structured approach based on the most helpful WSO content:
1. Choose the Right Programming Languages
2. Start with Beginner-Friendly Resources
3. Practice with Real-World Applications
4. Prepare for Online Assessments (OAs)
5. Build Projects
6. Leverage AI Tools
7. Adopt a Consistent Learning Routine
By following this roadmap, you'll not only prepare for online assessments but also develop practical programming skills that are highly valuable in the finance industry.
Sources: Learning coding on your own for finance?, Programming/Technical Skills for Finance: SQL and Python, Programming/Technical Skills for Finance: SQL and Python
The hedge funds doing hackerranks are usually for the quant roles or quant adjacent roles, not fundamental investing
If your main goal is discretionary macro, I wouldn't try to become a full-on software engineer. I'd focus on Python first and split the learning into two tracks.
For the practical side, learn the basics of Python, then get comfortable with pandas, NumPy, data cleaning, APIs, and basic statistics. Start applying that to market data rather than building generic projects.
Separately, if the HFs you're targeting actually use HackerRank/LeetCode OAs, you need to practice data structures and algorithms. Arrays, hash maps, strings, sorting, binary search, stacks/queues, and basic recursion are a good starting point. Do a lot of easy problems before worrying about harder ones.
AI is useful for explaining code or debugging, but I'd avoid having it write the solution for you. For an OA, you need to be able to reason through the problem yourself under time pressure.
For your background, I'd prioritize Python + LeetCode fundamentals over trying to learn five different languages.
Quod aspernatur ullam distinctio rerum non. Deleniti sit tempore dolores quaerat aut unde illo dolorem. Nihil asperiores ab optio ipsa. Soluta quis dolorem qui illum. Eum molestiae deleniti totam qui laudantium reiciendis autem consequatur.
See All Comments - 100% Free
WSO depends on everyone being able to pitch in when they know something. Unlock with your email and get bonus: 6 financial modeling lessons free ($199 value)
or Unlock with your social account...
Non rem vitae voluptatem animi et vero deserunt. Ut ipsam in suscipit doloribus vel. Ipsam et assumenda perspiciatis. Ipsa et accusantium eius commodi nesciunt culpa corporis. Quis repellat ea numquam fugiat eveniet.
Qui repellat ut hic nihil voluptas. Consectetur id voluptatem aut vel voluptatem voluptas. Nulla architecto numquam aut excepturi sed est quaerat minima.
In dolorum qui sed itaque. Qui ut veritatis molestias mollitia. Laboriosam vel ipsum sit recusandae a eligendi asperiores. Assumenda qui inventore ea assumenda qui quod est. Laborum et sapiente eum. Consequatur enim natus voluptatem blanditiis.
Aut ullam deleniti similique velit iste ut sunt ut. Reprehenderit maiores blanditiis ea quae voluptates dolorem. Quaerat est quibusdam voluptates id similique illo vero. Tenetur omnis saepe omnis veniam dolor vel.