Did some refactoring and added reading worker role