Fitting a Poisson GLM with level 1 and level 2 predictors I'm trying to fit a GLMER poisson model with level 1 and level 2 predictors. There's plenty of information in this website about fitting a Poisson GLM with level 1 predictors. My question is whether one can simply add level 2 predictors to this type of model, such as characteristics about the site (e.g., school or hospital characteristics). For example, here is a very good description of fitting a model with level 1 predictors in the typical example of "pupils within classes." But how would you add level 2 predictors to this type of model, such as characteristics about the classes? In my setting, I'm trying to fit a model in which I have board members nested in companies nested in industries across three years. It looks something like this:
    fit_poissonGLMER <- glmer(Y1 ~ X1 + X2 + X3 + Z1 + Z2 + 
        (1|Industry/Company) + (1|Year),
                    data = mydata, 
                    family = poisson(link = "log"))

Where X1, X2, and X3 are level 1 predictors (i.e., board members' characteristics) and Z1 and Z2 characteristics about the companies. Is this overall way of specifying the model correct?
 A: Late to this party but didn't want to miss out on all the fun!
The terminology of level-1 and level-2 predictors is usually reserved for a situation where you have two random grouping factors (e.g., Industry, Company) and one of those factors is nested in each other (e.g., Company is nested in Industry, in the sense that each Industry represented in your data includes companies that are different from one Industry to another).
In your case, you seem to have a slightly more complicated set up: Industry and Year are crossed random grouping factors and Company is a random grouping factor nested in Industry. Not sure whether the level-1 and level-2 terminology is correct in this setting where both crossing and nesting exist. To be on the safe side, you can refer to predictors as being industry predictors, company predictors and, if you have them, year predictors. (We don't know enough about your study design and research questions to confirm whether this type of set up actually makes sense for your data - we will assume that it does for the purposes of this answer.)
The problem with company predictors is that their effects can vary (1) across companies only, (2) across companies AND industries or (3) across industries only.  The way you specified your model currently won't allow you to cover all of these situations.  However, if you replace the construct  (1|Industry/Company) with the equivalent construct  (1|Industry) + (1|Industry:Company), you can cover all 3 situations and determine which one receives most support from your data:
Situation (1):
fit1_poissonGLMER <- glmer(Y1 ~ X1 + X2 + X3 + Z1 + Z2 +
                           (1|Industry) + 
                           (1 + Z1 + Z2|Industry:Company) + 
                           (1|Year),
                           data = mydata, 
                           family = poisson(link = "log"))

Situation (2):
fit2_poissonGLMER <- glmer(Y1 ~ X1 + X2 + X3 + Z1 + Z2 +
                           (1 + Z1 + Z2|Industry) + 
                           (1 + Z1 + Z2|Industry:Company) + 
                           (1|Year),
                           data = mydata, 
                           family = poisson(link = "log"))

Situation (3):
fit3_poissonGLMER <- glmer(Y1 ~ X1 + X2 + X3 + Z1 + Z2 +
                           (1 + + Z1 + Z2|Industry) + 
                           (1|Industry:Company) + 
                           (1|Year),
                           data = mydata, 
                           family = poisson(link = "log"))

Note that in the above, I assumed that Company is nested in Industry and that the predictors measured at the company level were Z1 and Z2.
The 3 models formulated above are so-called random-intercept and random-slope models.  For random-intercept models, the formulations:
fit_poissonGLMER <- glmer(Y1 ~ X1 + X2 + X3 + Z1 + Z2 +
                           (1|Industry) + 
                           (1|Industry:Company) + 
                           (1|Year),
                           data = mydata, 
                           family = poisson(link = "log"))

and
fit_poissonGLMER <- glmer(Y1 ~ X1 + X2 + X3 + Z1 + Z2 +
                           (1|Industry/Company) +
                           (1|Year),
                           data = mydata, 
                           family = poisson(link = "log"))

are equivalent.
A: I realized that my comment above is general, so I'll submit it as an answer:
In lme4 syntax, fixed effects are entered as you have them here, and random effects are specified with the | operator. Correctly specifying the random effects is key to returning the correct fixed effect coefficient. It looks like you have specified the nesting of companies in industries correctly. You could also likely examine the difference in the fit of a models with Year modeled as fixed v. random. That's purely your choice.
