I develop and apply techniques for analyzing seismograms in order to understand how earthquakes work and to help quantify the hazards they pose. My research group is studying energy partitioning during earthquakes - from the very smallest to the very largest events, the mechanics of intermediate-depth earthquakes, induced earthquakes, and tectonic tremor. We also work on methods to anticipate the strength of shaking in earthquakes. We are developing methods to recover more accurate Green's functions from the ambient seismic field (seismic waves present in the Earth at all times). We use these Green's functions to construct "virtual earthquakes" that can be used to anticipate variations in the strength of shaking in real earthquakes. We are also developing methods to detect earthquakes in continuous waveform data using reverse time migration and efficient similarity search.