Der gezeigte Code ist in mehrfacher Hinsicht veraltet und fehlerhaft:
* Man sollte niemals die Pakete `ngerman` und `babel` gemeinsam verwenden, da sie beide die Sprache-Schnittstelle von LaTeX manipulieren. Grundsätzlich sollte man für denselben Zweck in der Regel immer nur ein einziges Paket laden.
* Das Paket `ngerman` gilt als veraltet und wird nicht mehr gepflegt. Daher sollte man es auch nicht mehr verwenden. Es ist besser (nur) das Paket `babel` mit Sprachoption `ngerman` bzw. `main=ngerman` zu laden. Oftmals ist es sogar sinnvoll, die Hauptsprache (zusätzlich) bei `\documentclass` als globale Option anzugeben. Verwendet man das Paket doch, sollte man keinesfalls ein weiteres Sprachpaket wie `babel` oder `polyglossia` zusätzlich laden. Außerdem sollte man `ngerman` nur unmittelbar vor `\begin{document}` verwenden. Das Paket ändert nämlich `\catcode`-Einstellungen unmittelbar, so dass es zu Problemen mit anderen Paketen kommen kann. Die einfachere und empfohlene Lösung ist aber, Paket `ngerman` nicht zu verwenden.
* Die Umgebung `block` ist im Beispiel nicht definiert. Ich kann daher allenfalls spekulieren, welchen Sinn sie hat. In einem vollständigen Minimalbeispiel sollte man undefinierte Umgebungen und Anweisungen vermeiden.
* Option `utf8x` für Paket `inputenc` lädt das Paket `ucs`, das leider mit diversen anderen Paketen nicht kompatibel ist. Man sollte die Option daher in der Regel durch `utf8` ersetzen. Da außerdem LaTeX seit April 2018 auch bei Verwendung von `pdflatex` oder `latex` auf UTF-8 als Eingabecodierung voreingestellt ist, kann und sollte man für UTF-8-kodierte Dokumente einfach ganz auf das Laden von `inputenc` verzichten.
* Die Pakete `color`, `graphicx` und `hyperref` benötigen weder Option `dvips` noch Option `pdftex`. `dvips` ist das voreingestellte Backend bei Verwendung von `latex` und `pdftex` ist das voreingestellte Backend bei Verwendung von `pdflatex`. Darüber hinaus erkennen die Pakete auch weitere Backends wie `xetex` und `luatex` automatisch. Daher ist es besser, die Optionen nicht zu setzen. Damit kann und sollte auch die komplette Unterscheidung mit Paket `ifpdf` und der Anweisung `\ifpdf` entfallen.
* Die Standardklassen sind schlecht auf Absatzabstand statt Absatzeinzug vorbereitet. Wenn man also mit Absatzabstand arbeiten will, sollte man nicht einfach nur `\parindent` und `\parskip` laden, sondern besser das Paket [`parskip`](https://ctan.org/pkg/parskip) verwenden. Näheres dazu ist der Anleitung des Pakets zu entnehmen.
* Statt einfach nur `\ttdefault` auf `pcr` umzudefinieren, empfehle ich, das Paket `courier` zu laden. Das macht zwar derzeit auch nichts anderes, dafür ist das Laden des Pakets mehr oder weniger selbsterklärend. Außerdem könnte das Paket irgendwann vielleicht weitere Verbesserungen enthalten. Kopiert man stattdessen einfach nur den Code des Pakets, koppelt man sich von solchen möglichen Verbesserungen des Pakets ab. IMHO passt übrigens Courier eher schlecht zu Latin Modern. Ich bezweifle daher etwas, dass das eine bessere Wahl als die auf Latin Modern abgestimmte Latin Modern Typewriter ist.
* Die Umgebung `document` kennt kein Argument. Die leere Klammer bei `\begin{document}{}` beginnt damit das Dokument direkt mit einer leeren Gruppe. Solche Dinge können zu unerwünschten Leerzeichen bis hin zu unerwünschten Leerseiten führen. Man sollte daher damit vorsichtig sein.
* Für Briefe gibt es übrigens eine ganze Reihe von speziellen Briefklassen und Briefpaketen. In der Regel würde ich daher für ein Anschreiben jeglicher Art, die Verwendung einer solchen Klasse bzw. eines Pakets empfehlen.
* Um ein komplettes Dokument serifenlos zu setzen, verwendet man besser `\renewcommand\familydefault{\sfdefault}` und nicht ein explizites `\sffamily`. Das hat den Vorteil, dass dann eben auch ein implizites `\normalfont`, beispielsweise für den Seitenkopf oder -fuß, nicht auf einen Serifenfont umschaltet.
* [`\\` ist kein Absatz](https://texwelt.de/fragen/5006) und sollte auch nicht für vertikale Abstände missbraucht werden. Dafür gibt es Befehle wie `\bigskip`, `\medskip`, `\smallskip` und `\vskip`.
Bei Beachtung bereits der ersten drei Hinweise wird das Beispiel ohne Fehler lauffähig, beispielsweise:
% Achtung: Der hier gezeigte Code ist nicht empfehlenswert, sondern lediglich lauffähig.
% Siehe die Kritikpunkte unter <https://texwelt.de/fragen/26577>.
\documentclass[11pt,a4paper]{article}
%\usepackage{ngerman}% Keinesfalls hier laden!
\usepackage[ngerman]{babel}% Nur hier laden, wenn Paket `ngerman` überhaupt nicht geladen wird!
\usepackage[utf8x]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{marvosym}
\usepackage{ifpdf}
\usepackage[pdftex]{color}
\ifpdf
\usepackage[pdftex]{graphicx}
\else
\usepackage[dvips]{graphicx}\fi
\pagestyle{empty}
\usepackage[scale=0.775]{geometry}
\setlength{\parindent}{0pt}
\addtolength{\parskip}{6pt}
\def\firstname{Nabil}
\def\familyname{Sifo}
\def\FileAuthor{\firstname~\familyname}
\def\FileTitle{\firstname~\familyname's Bewerbungsschreiben}
\def\FileSubject{Bewerbungsschreiben}
\def\FileKeyWords{\firstname~\familyname, Bewerbungsschreiben}
\renewcommand{\ttdefault}{pcr}
\hyphenation{ins-be-son-de-re}
\usepackage{url}
\urlstyle{tt}
\ifpdf
\usepackage[pdftex,pdfborder=0,breaklinks,baseurl=http://,pdfpagemode=None,pdfstartview=XYZ,pdfstartpage=1]{hyperref}
\hypersetup{
pdfauthor = \FileAuthor,%
pdftitle = \FileTitle,%
pdfsubject = \FileSubject,%
pdfkeywords = \FileKeyWords,%
pdfcreator = \LaTeX,%
pdfproducer = \LaTeX}
\else
\usepackage[dvips]{hyperref}
\fi
\definecolor{firstnamecolor}{RGB}{125,85,85}
\definecolor{familynamecolor}{RGB}{138,74,57}
\hypersetup{pdfborder=0 0 0}
\newenvironment{block}[1]{\par}{\par}% Irgendwie muss die Umgebung definiert (oder weggelassen) werden!
%\usepackage{ngerman}% Frühestens hier laden, aber keinesfalls zusammen mit Paket babel!
\begin{document}{}
\begin{block}{Blocktitel}
\sffamily % for use with a résumé using sans serif fonts;
%\rmfamily % for use with a résumé using serif fonts;
\hfill%
\begin{minipage}[t]{.6\textwidth}{}
\raggedleft%
{\bfseries {\color{firstnamecolor}\firstname}~{\color{familynamecolor}\familyname}}\\[.35ex]
\small\itshape%
Basler Straße 99\\
/9330 Freiburg im Breisgau\\[.35ex]
\Mobilefone~+49 177 16400000\\
\Letter~\href{mailto:nabi@outlook.com}{nabi@outlook.com}
\end{minipage}\\[0.5em]
%
{\color{firstnamecolor}\rule{\textwidth}{.25ex}}
%
\begin{minipage}[t]{.4\textwidth}{}
\raggedright%
% {\bfseries {\color{firstnamecolor}
\vspace*{1em}
Allianz SE\\[.35ex]
% }}
\small%
Fritz-Schäffer-Straße 9\\
81737 München
\end{minipage}
%
\hfill
%
\begin{minipage}[t]{.4\textwidth}
\raggedleft % US style
\today
%April 6, 2006 % US informal style
%05/04/2006 % UK formal style
\end{minipage}\\[1em]
\raggedright
\begin{block}{}
{\bfseries \color{familynamecolor}Bewerbung als blaaaaaal}\\[1.5em]
Sehr geehrtere Damen und Herren,\\[1em]
%
bla bla \\
blabla
%Yours sincerely,\\[2em] % if the opening is "Dear Mr(s) Doe,"
Mit freundlichen Grüßen,\\[3em] % if the opening is "Dear Sir or Madam,"
%
%\includegraphics[scale=0.75]{signature_blue}\\
{\bfseries \firstname~\familyname}\\
%
\vfill%
{\slshape \bfseries Bewerbungsunterlagen}\\
% {\slshape Curriculum Vit\ae{}}
\end{block}
\end{block}
\end{document}
Ich empfehle jedoch *alle* obigen Hinweise zu beachten und umzusetzen!