I am a theoretical computer scientist. My research develops foundational algebraic tools like algorithms for multiplying matrices and computing Fourier transforms, and uses them to solve a wide variety of computational problems. Algebraic objects appear naturally throughout the theory and practice of computation. Matrices, for example, can represent graphs, transformations, physical systems, and many other forms of data. Quickly performing matrix operations is often key to efficiently understanding and manipulating these objects. Meanwhile, many impactful uses of algebraic tools are in areas like computational genetics or economic modeling which, at first glance, appear to have nothing to do with algebra. Despite the importance of these algebraic problems, it is unknown whether faster algorithms than the current state of the art are possible. I develop these fundamental algebraic tools, and apply them to other areas through both new and well-established algebraic connections.