2 червня 2016 року Еггештайн підписав свій перший професійний контракт, який діяв до 2019 року.[1]
21 серпня 2016 року в поєдинку Кубка Німеччини проти «Шпортфройнде» Йоханнес дебютував за основний склад «Вердера»[2]. 26 серпня 2017 року в матчі проти мюнхенської "«Баварія» він дебютував у Бундеслізі, замінивши у другому таймі Фіна Бартельса[3]. Станом на 19 травня 2019 року відіграв за бременський клуб 30 матчів в національному чемпіонаті.
Виступи за збірні
2012 року дебютував у складі юнацької збірної Німеччини, взяв участь у 39 іграх на юнацькому рівні, відзначившись 24 забитими голами. З командою до 17 років завоював срібні медалі юнацького чемпіонату Європи у Болгарії. На турнірі він зіграв у чотирьох матчах і у поєдинку проти словенців забив єдиний гол у матчі[4]. Цей результат дозволив команді поїхати того ж року на юнацький чемпіонат світу, де Йоганнес з 4 голами став другим бомбардиром і володарем «Срібного бутсу»[5].