А вы знаете стандартные структуры и алгоритмы?
пузырек не напишет только тот, кто не знает что это такое. Ну и да, нужно знать примерно как они работают и сложность различных алгоритмов для различных случаев что бы писать более эффективный код.
Вообще все упирается в знание сложности алгоритмов, из этого вытекает что вы должны знать хотя бы примерно как эти алгоритмы работают. Скажем вы должны знать что при таком-то случае, с которым у вас чаще сталкивается программа, алгоритм А имеет сложность O(N) а другой при таком же случае всего то O(logN).... при том что в большинстве других задач тот же самый алгоритм A c определенными допущениями может иметь сложность O(1).
Алгоритмы базовые обычно связаны со структурами данных (вставка/выборка из хэш таблицы, вставка/выборка в деревья и т.д.) На алгоритмах сортировки просто удобнее объяснять все это дело и учить людей разрабатывать алгоритмы, определять их сложность и т.д.
Сейчас вот собираюсь перечитать Кромена, "Алгоритмы: построение и анализ". Ибо поймал себя на мысли что я уже плохо помню все это дело.
Некоторые стандартные структуры и алгоритмы знаю. Но в работе использую редко: обычно ситуации возникают такие, что непосредственное применение стандартного алгоритма будет не очень эффективным (или по какой-то причине вообще не подойдёт), так что приходится строить более специальные структуры и алгоритмы - обычно как комбинацию стандартных приёмов, но не обязательно. 
  Из стандартных приходилось писать, разве что, приоритетную очередь: почему-то в C# её не сделали. И QR-алгоритм для собственных значений матрицы (про мелочи типа многомерного метода Ньютона не говорю - они попадаются регулярно, и каждый раз со своими особенностями).
  Сортировку в последний раз писал с полгода назад. Получился монстр на полтысячи строк, но он работал.
  Сортировку пузырьком (или простыми вставками) приходится писать когда по какой-то причине неудобно вызывать стандартный Sort. Например, при сортировке фрагмента массива с нестандартной функцией сравнения - опять же, в C# этот метод не вывели. Там проще написать три строчки в коде, чем оформлять класс-компаратор.