I frequently receive requests by individuals at all levels to join the lab. First of all, thank you. I'm flattered by your interest, and I encourage your eagerness to be involved in research!
There are a few things to know, and a few things to do, to help us connect and find out if there is a fit. I list these here to help smooth our your process if you're interested, and to reduce any anxiety you might feel (which you needn't! But hey, asking someone for something is not always easy).
Please appreciate that I care a lot about mentoring. This means if you join the lab I will strive to support you however I can. It also means I seek to keep my lab from getting too large so that I am able to offer mentoring to everyone here. I am always open to discussing research with enthusiastic individuals, but I am not always able to accept even very talented people.
Email is free and I always encourage students to reach out to faculty who interest them. I, like everyone, can't always say "yes", but it doesn't hurt to ask. I am often overbooked. Please don't be offended if I don't respond to an email quickly.
The lab is a dry lab. I feel strongly about being supportive of people from all backgrounds; anyone with genuine interest can succeed, whether you have programming experience or not. BUT, you can't do research here without programming. So please check out these two papers (paper 1, paper 2) and these data, and make sure you can recapitulate some of the analyses before reaching out about a position. You won't be graded, but we will discuss it; if this is too hard, or if going through it feels so boring that you don't, then you will have difficulty doing research here.
The lab is a dry lab, so gathering new data is typical. I love interesting ideas and getting to yes, but especially with humans, new experiments take months to get sorted and then approved as ethical, so if you come in as a rising senior proposing new human experiments, I'll be happy to discuss with you as a thought exercise, but it's unlikely to be feasible as a thesis. Joining from Freshman and Sophomore years makes it less of a rush to develop your own projects.
Specificity helps - let me know what interests you as clearly as you can when you reach out. My job is to figure out how to fit you into current flows, and so it helps me to know what you're excited about. Research is hard work, so I try to put everyone where they feel personal reward from the work. Similarly, if you just say you're into Machine Learning or something very broad like that, I still don't know why me instead of the many other researchers that might also apply to, and it makes it hard to respond.
I do not budget support for MS students in my grants. I am glad to support motivated MS students from any program, but please do not reach out if you are mainly looking for a lab to support you. I really do sympathize, but I cannot be the solution.
For those coming from CS - you need some exposure to biology. Biology is awesome in its complexity - that's part of the appeal, and it's part of why machine learning can be both useful (making sense of scale) and problematic (failing to appreciate structure). Assuming financial or other forecasting models will easily transfer to biology is a common mistake that often leaves students frustrated. Projects in my lab are built together with a hypothesis-driven approach.