The first part is linear.
The second one.
d-log(1+exp(x'b))/db = - exp(x'b)/(1+exp(x'b))*x = -
[1-1/(1+exp(x'b))]*x
dd-log(1+exp(x'b))/dbdb' = - exp(x'b)/(1+exp(x'b))^2*xx'
ddlogL/dbdb' = - sum{ exp(x'b)/(1+exp(x'b))^2 * xx' }
i.e. a sum of negative-semidefinite matrices.
Now, if matrix X=(x1, x2, ..., xn) has full rank and n>k, where k:
b=(b1, ..., bk), or if n>k and X is random and has full rank with
probability 1, then for every a there exists xi such that axi<>0,
hence, axixi'a'>0.
Finally, it's globally strictly concave iff X has full rank.