SNiPER (Software for Non-collider Physics ExpeRiments) has been developed based on common requirements from both nuclear reactor neutrino and cosmic ray experiments. The design and implementation of SNiPER is described in this proceeding. Compared to the existing offline software frameworks in the high energy physics domain, the design of SNiPER is more focused on execution efficiency and flexibility. SNiPER has an open structure. User applications are executed as plug-ins based on it. The framework contains a compact kernel for software components management, event execution control, job configuration, common services, etc. Some specific features are attractive to non-collider physics experiments.