Подработаю немного телепатом.
В changeEmployee() ты добавляешь Employee employee, который не определен. Из-за этого у тебя не компилируется проект. Тебе нужно его туда как-то передать, но твой searchBySurname() возвращает только код. И ни о каком
employee.setLastname(scanner.next());
employee.setName(scanner.next());
не может быть и речи - у тебя просто нет employee.
В searchBySurname() ты пытаешься проверить на соответствие коллекцию к строке:
if (list.equals(name) || list.equals(lastname))
Так работать не будет, что логично. Более того, твой метод называется searchBySurname, но ты туда передаешь и имя, и даже пытаешься на него проверять.
То есть у тебя проблема в самой идее. Надо определиться что ты хочешь. Возможно, searchBySurname будет возвращать индекс первого попадания employee и ты будешь получать его из твоего листа, предлагая изменять его. Возможно, поиск будет генировать мапу всех однофамильцев и их индексов, чтобы дать пользователю вариант выбрать в changeEmployee().
В зависимости от твоего решения, надо будет полностью переписать searchBySurname, чтобы он прохдил по твоему листу, и changeEmployee, чтобы он мог изменять employee.