[bufrtables] Encoding and Decoding BUFR data to be read as Raster Files

we have to read BUFR data to convert them into standard raster data, like
e.g. GEOTIFF and vice versa.
What would be the best way to do this?
We have Software that is able to convert netCDF into geoTiff files and I was
wondering if there is a software or library in java or python that could
convert pixel - based BUFR data into either netCDF or even geoTiff directly.
Which would be the road to go?