Job implementation

Please, merge this to master