Who is responsible to obtain a permit? The homeowner or the contractor?

It is a joint responsibility.  A property owner is responsible for all activity on his/her own property.  A contractor, registered and/or licensed  by the State of New Jersey, is obligated not to perform work that he knows required a construction permit until the Building Departmet has issued a permit.  

An experienced contractor is familiar with the construction codes, the state mandated forms, and the process for applying for a construction permit.  A homeower should be apprehensive with their choice of contractor if the contractor refuses to be responsible for applying for a permit.