Primero debes tener claro qué es SQL y qué no es. SQL es un lenguaje de consulta y lenguaje de manipulación de datos utilizado para acceder y manipular datos en una base de datos relacional. Pero el esquema y los objetos de datos (tablas, columnas, índices, restricciones) en la base de datos no están "en SQL", SQL es solo un lenguaje posible para consultar y manipular los datos.
Para poder trabajar eficazmente con una base de datos relacional, debe comprender tablas, columnas, tipos de datos, claves primarias, claves externas e índices. También debe comprender los conceptos básicos de las consultas: proyección, filtros, uniones. Necesita comprender los conceptos básicos de la normalización.
Pero ninguna de estas cosas en principio requiere que toque SQL. Puede diseñar el esquema de la base de datos en un diseñador de GUI, y puede escribir consultas y actualizaciones en algún otro idioma como SqlAlchemy para Python o Linq para .net. Algunos incluso argumentan que estos lenguajes son una representación más pura del modelo relacional que SQL.
Entonces, en teoría, tu amigo tiene razón: no necesitas aprender SQL. Pero aún necesita aprender cómo funcionan las bases de datos relacionales, y cuando sabe eso, SQL es bastante fácil de aprender, ya que es solo una sintaxis.
Si bien no es necesario, es bastante conveniente conocer SQL, ya que puede consultar cualquier base de datos directamente en SQL sin la necesidad de una capa de traducción separada. Y dado que todos los tutoriales, libros y ejemplos usan SQL, será difícil evitar aprenderlo.