EDIT AT 10/12/06:
ok, this is pretty much the best construction I can get, see if any one come up with better ideas.
Theorem. For each $n$ There is an $(5n+12)$-state NFA $M$ over alphabets $\Sigma$ with $|\Sigma|=5$ such that the shortest string not in $L(M)$ is of length $(2^n-1)(n+1)+1$.
This will give us $f(n) = \Omega(2^{n/5})$.
The construction is pretty much the same with the one in Shallit's, except we construct an NFA directly instead of representing the language by a regular expression first. Let
$\Sigma = \{{0 \brack 0},{0 \brack 1},{1 \brack 0},{1 \brack 1},\sharp\}$.
For each $n$, we are going to construct an NFA recognizing language $\Sigma^*-\{s_n\}$, where $s_n$ is the following sequence (take $n=3$ for example):
$s_3 = \sharp{0 \brack 0}{0 \brack 0}{0 \brack 1}\sharp{0 \brack 0}{0 \brack 1}{1 \brack 0}\sharp \ldots \sharp{1 \brack 1}{1 \brack 1}{0 \brack 1}\sharp$.
The idea is that we can construct an NFA consists of five parts;
- a starter, which ensures the string starts with $\sharp{0 \brack 0}{0 \brack 0}{0 \brack 1}\sharp$;
- a terminator, which ensures the string ends with $\sharp{1 \brack 1}{1 \brack 1}{0 \brack 1}\sharp$;
- a counter, which keeps the number of symbols between two $\sharp$'s as $n$;
- an add-one checker, which guarantees that only symbols with the form $\sharp{x \atop x+1}\sharp$ appears; finally,
- a consistent checker, which guarantees that only symbols with the form $\sharp{x \atop y}\sharp{y \atop z}\sharp$ can appear concurrently.
Note that we do want to accept $\Sigma^*-\{s_n\}$ instead of $\{s_n\}$, so once we find out that the input sequence is disobeying one of the above behaviors, we accept the sequence immediately. Otherwise after $|s_n|$ steps, the NFA will be in the only possible rejecting state. And if the sequence is longer than $|s_n|$, the NFA also accepts. So any NFA satisfies the above five conditions will only reject $s_n$.
It may be easy to check the following figure directly instead of a rigorous proof:

We start at the upper-left state. The first part is the starter, and the counter, then the consistent checker, the terminator, finally the add-one checker. All the arc with no terminal nodes point to the bottom-right state, which is an all time acceptor. Some of the edges are not labeled due to lack of spaces, but they can be recovered easily. A dash line represents a sequence of $n-1$ states with $n-2$ edges.
We can (painfully) verify that the NFA rejects $s_n$ only, since it follows all the five rules above. So a $(5n+12)$-state NFA with $|\Sigma|=5$ has been constructed, which satisfies the requirement of the theorem.
If there's any unclearliness/problem with the construction, please leave a comment and I'll try to explain/fix it.
This question has been studied by Jeffrey O. Shallit et al., and indeed the optimal value of $f(n)$ is still open for $|\Sigma|>1$. (As for unary language, see the comments in Tsuyoshi's answer)
In page 46-51 of his talk on universality, he provided a construction such that:
Theorem. For $n\geq N$ for some $N$ large enough, there is an $n$-state NFA $M$ over binary alphabets such that the shortest string not in $L(M)$ is of length $\Omega(2^{cn})$ for $c=1/75$.
Thus the optimal value for $f(n)$ is somewhere between $2^{n/75}$ and $2^n$. I'm not sure if the result by Shallit has been improved in recent years.