I have a passion for coffee as much as pipe tobacco. I owned a coffee shop many years ago. As a result I only buy fresh roasted coffee. Why? Well, whole bean coffee after it roasted has about the same shelf life of bananas, or about 4 weeks. The first 13 1/2 days after roasting the beans will out-gas CO2 and that protects the compounds that make tasty coffee to break down in the face of oxygen. If you grind coffee it will start to exhibit off flavors in 24 - 48 hours because it has more surface area exposed to oxygen. Espresso grinds can exhibit off flavors in minutes.

Since I typically go through 1 lb a week I started roasting my own coffee. I use a Behmor and just got the latest model after the original model finally died after 10 years of use. This is a fantastic roaster and easy to use.
After loading a pound of green coffee in the basket I hit the 1 lb button. At 4:30 minutes left in the roast you need to hit the start button or it will stop the roast. Safety feature to make sure you are watching. I am listening to hear popcorn popping noises for 1st crack. When I do I adjust the time to a 3 minute countdown to end the roast and go into cool down. That usually takes it up to about Full City Plus roast level.

Buying beans I use Sweet Maria’s Coffee. Coffee around the world is release at different points of the year. Sweet Maria’s site provides flavor wheels from expert cupper’s. They make it easy to find flavor profiles you enjoy. Because I drink so much I typically buy 20 - 40 lbs at a time with a flat rate shipping.