Skip to main content

Pennsylvania Department of Labor & Industry Highlights New Apprenticeship Program to Prepare Central Pennsylvania Workers for In-Demand Warehouse and Logistics Jobs

On April 18th, PA Department of Labor & Industry Secretary Jerry Oleksiak visited Goodwill Keystone Area’s Camp Hill facility to announce the new apprenticeship program for logistic technicians. Sponsored by Goodwill, the 18-month program will provide on-the-job training and classroom instruction to provide the skills needed for success in central Pennsylvania’s fast-growing logistics industry.

Camp Hill, PA – Department of Labor & Industry (L&I) Secretary Jerry Oleksiak today announced a new registered apprenticeship program for logistic technicians in central Pennsylvania during a tour of the Goodwill Warehouse and Outlet Center in Camp Hill. The apprenticeship will prepare workers for new jobs in the growing warehouse and logistics industry in the region, earning nationally-recognized credentials as a Logistics Technician Journeyperson. 

“This new program will provide apprentices with skills training for the fast-growing logistics industry, including forklift certification, truck driving, fleet maintenance, warehouse safety, and electronic warehouse management systems,” said Governor Wolf. “The program will address the shortage of skilled workers in the logistics industry, allowing businesses to develop a talent pool of highly skilled employees.”

Apprenticeships are part of the governor’s PAsmart initiative, which invests in job training and science and technology education. The governor’s budget builds on the success of PAsmart to create opportunities for Pennsylvanians from birth to retirement. Governor Wolf’s Statewide Workforce, Education, and Accountability Program (SWEAP) expands access to early childhood education, increases investments in schools, and partners with the private sector to expand on the PAsmart initiative.

This year, the governor is proposing an additional $10 million for PAsmart to bolster career and technical education for adults as well as job training programs at companies to enhance the skills of Pennsylvania workers.

The governor also recently created the Keystone Economic Development and Workforce Command Center. The partnership between state government and private sector leaders will identify and address the barriers, skills gaps, and worker shortages that exist across the commonwealth. 

In Cumberland County, the 18-month apprenticeship program for logistics technicians was approved by the Department of Labor & Industry’s (L&I) Apprenticeship and Training Office (ATO). Sponsored by Goodwill Keystone Area, the program will provide on-the-job training and hands-on opportunities for apprentices to develop their skills. Apprentices will also receive related technical instruction from classroom and e-learning through HACC, Central Pennsylvania’s Community College, including first aid and CPR certification, OSHA 10, and career readiness training.

“The shortage of skilled workers is having a profound impact on the logistics industry,” said John McHenry, CEO, Goodwill Keystone Area. “In addition to 70 years of experience helping individuals with barriers to employment get and keep jobs in the community, Goodwill Keystone Area has subject matter expertise in logistics. It was a natural fit to blend these two skillsets together to create a first-of-its-kind Logistics Technician Apprenticeship.”

“Governor Wolf is committed to creating the strongest workforce in the nation through his SWEAP proposal and PAsmart initiative,” said L&I Secretary Jerry Oleksiak. “Apprenticeships are a vital tool in training our future and current workforce, and that is why the governor is proposing additional PAsmart funding to further improve access to apprenticeships and training programs for our students and workers.”

The Wolf Administration created the ATO in 2016. Since then, the office has registered 141 new program sponsors and 201 new apprenticeship programs or occupations, bringing the total number of registered apprentices to 16,892 statewide.

Apprenticeship programs approved by the ATO provide employer-driven training to create a more productive, highly-skilled workforce for employers and help reduce employee turnover. The program provides job seekers with increased skills, and a nationally recognized credential to support future career advancement and increased wages. 

For more information about pursuing an education and career in Pennsylvania at any stage of life, visit PAsmart

Visit ATO for more information about apprenticeship programs and the Apprenticeship and Training Office.

Learn more about Goodwill Keystone Area's Logistics Apprenticeship program here.

ABC27 News Featured Story:

truetrue
Settings17.883MBMemory Usage248msRequest Duration
Theme
Open Button Position
Hide Empty Tabs
Autoshow
Reset to defaults
Joomla! Version5.3.0
PHP Version8.3.24
Identityguest
Response200
Templategoodwill-cassiopeia
Database
Server
mysql
Version
10.5.27-MariaDB
Collation
utf8_general_ci
Conn Collation
utf8mb4_general_ci
$_GET
array:1 [ "id" => "397" ]
$_POST
[]
$_SESSION
array:1 [ "joomla" => "***redacted***" ]
$_COOKIE
[]
$_SERVER
array:54 [ "USER" => "yourgood" "HOME" => "/var/www/vhosts/yourgoodwill.org" "SCRIPT_NAME" => ...
session
array:3 [ "counter" => 1 "timer" => array:3 [ "start" => 1754888748 "last" => 1754888748...
registry
array:3 [ "data" => [] "initialized" => false "separator" => "." ]
user
array:21 [ "id" => 0 "name" => null "username" => null "email" => null "password" => "***r...
  • afterLoad (3.51MB) (35.43ms)
  • afterInitialise (6.97MB) (76.52ms)
  • afterRoute (624.55KB) (2.35ms)
  • beforeRenderComponent com_content (498.81KB) (6.87ms)
  • Before Access::preloadComponents (all components) (1001.64KB) (12.5ms)
  • After Access::preloadComponents (all components) (121.74KB) (1.89ms)
  • Before Access::preloadPermissions (com_content) (1.63KB) (43μs)
  • After Access::preloadPermissions (com_content) (439.06KB) (2.98ms)
  • Before Access::getAssetRules (id:498 name:com_content.article.397) (18.65KB) (50μs)
  • After Access::getAssetRules (id:498 name:com_content.article.397) (26.93KB) (861μs)
  • afterRenderComponent com_content (2.92MB) (74.2ms)
  • afterDispatch (4.19KB) (253μs)
  • afterRender (1.42MB) (32.71ms)
  • 1 x afterInitialise (6.97MB) (30.92%)
    76.52ms
    1 x afterRenderComponent com_content (2.92MB) (29.98%)
    74.20ms
    1 x afterLoad (3.51MB) (14.32%)
    35.43ms
    1 x afterRender (1.42MB) (13.22%)
    32.71ms
    1 x Before Access::preloadComponents (all components) (1001.64KB) (5.05%)
    12.50ms
    1 x beforeRenderComponent com_content (498.81KB) (2.78%)
    6.87ms
    1 x After Access::preloadPermissions (com_content) (439.06KB) (1.2%)
    2.98ms
    1 x afterRoute (624.55KB) (0.95%)
    2.35ms
    1 x After Access::preloadComponents (all components) (121.74KB) (0.77%)
    1.89ms
    1 x After Access::getAssetRules (id:498 name:com_content.article.397) (26.93KB) (0.35%)
    861μs
    1 x afterDispatch (4.19KB) (0.1%)
    253μs
    1 x Before Access::getAssetRules (id:498 name:com_content.article.397) (18.65KB) (0.02%)
    50μs
    1 x Before Access::preloadPermissions (com_content) (1.63KB) (0.02%)
    43μs
22 statements were executed, 6 of which were duplicates, 16 unique19.64ms202.44KB
  • SELECT @@SESSION.sql_mode;156μs968B/libraries/vendor/joomla/database/src/Mysqli/MysqliDriver.php:259Copy
  • SELECT `data` FROM `jmla_session` WHERE `session_id` = ?232μs1008BParams/libraries/vendor/joomla/session/src/Handler/DatabaseHandler.php:250Copy
  • SELECT `session_id` FROM `jmla_session` WHERE `session_id` = :session_id LIMIT 1181μs1.3KBParams/libraries/src/Session/MetadataManager.php:187Copy
  • INSERT INTO `jmla_session` (`session_id`,`guest`,`time`,`userid`,`username`,`client_id`) VALUES (:session_id, :guest, :time, :user_id, :username, :client_id)857μs944BParams/libraries/src/Session/MetadataManager.php:260Copy
  • SELECT `id`,`rules` FROM `jmla_viewlevels`229μs976B/libraries/src/Access/Access.php:955Copy
  • SELECT `b`.`id` FROM `jmla_usergroups` AS `a` LEFT JOIN `jmla_usergroups` AS `b` ON `b`.`lft` <= `a`.`lft` AND `b`.`rgt` >= `a`.`rgt` WHERE `a`.`id` = :guest259μs1.33KBParams/libraries/src/Access/Access.php:868Copy
  • SELECT `id`,`name`,`rules`,`parent_id` FROM `jmla_assets` WHERE `name` IN (:preparedArray1,:preparedArray2,:preparedArray3,:preparedArray4,:preparedArray5,:preparedArray6,:preparedArray7,:preparedArray8,:preparedArray9,:preparedArray10,:preparedArray11,:preparedArray12,:preparedArray13,:preparedArray14,:preparedArray15,:preparedArray16,:preparedArray17,:preparedArray18,:preparedArray19,:preparedArray20,:preparedArray21,:preparedArray22,:preparedArray23,:preparedArray24,:preparedArray25,:preparedArray26,:preparedArray27,:preparedArray28,:preparedArray29,:preparedArray30,:preparedArray31,:preparedArray32,:preparedArray33,:preparedArray34,:preparedArray35,:preparedArray36,:preparedArray37,:preparedArray38,:preparedArray39,:preparedArray40,:preparedArray41)840μs7.44KBParams/libraries/src/Access/Access.php:357Copy
  • SELECT `id`,`name`,`rules`,`parent_id` FROM `jmla_assets` WHERE `name` LIKE :asset OR `name` = :extension OR `parent_id` = 01.27ms93.48KBParams/libraries/src/Access/Access.php:301Copy
  • SHOW FULL COLUMNS FROM `jmla_content`713μs2.39KB/libraries/vendor/joomla/database/src/Mysqli/MysqliDriver.php:539Copy
  • UPDATE `jmla_content` SET `hits` = (`hits` + 1) WHERE `id` = '397'1.01ms48B/libraries/src/Table/Table.php:1348Copy
  • SELECT `a`.`id`,`a`.`asset_id`,`a`.`title`,`a`.`alias`,`a`.`introtext`,`a`.`fulltext`,`a`.`state`,`a`.`catid`,`a`.`created`,`a`.`created_by`,`a`.`created_by_alias`,`a`.`modified`,`a`.`modified_by`,`a`.`checked_out`,`a`.`checked_out_time`,`a`.`publish_up`,`a`.`publish_down`,`a`.`images`,`a`.`urls`,`a`.`attribs`,`a`.`version`,`a`.`ordering`,`a`.`metakey`,`a`.`metadesc`,`a`.`access`,`a`.`hits`,`a`.`metadata`,`a`.`featured`,`a`.`language`,`fp`.`featured_up`,`fp`.`featured_down`,`c`.`title` AS `category_title`,`c`.`alias` AS `category_alias`,`c`.`access` AS `category_access`,`c`.`language` AS `category_language`,`fp`.`ordering`,`u`.`name` AS `author`,`parent`.`title` AS `parent_title`,`parent`.`id` AS `parent_id`,`parent`.`path` AS `parent_route`,`parent`.`alias` AS `parent_alias`,`parent`.`language` AS `parent_language`,ROUND(`v`.`rating_sum` / `v`.`rating_count`, 1) AS `rating`,`v`.`rating_count` AS `rating_count` FROM `jmla_content` AS `a` INNER JOIN `jmla_categories` AS `c` ON `c`.`id` = `a`.`catid` LEFT JOIN `jmla_content_frontpage` AS `fp` ON `fp`.`content_id` = `a`.`id` LEFT JOIN `jmla_users` AS `u` ON `u`.`id` = `a`.`created_by` LEFT JOIN `jmla_categories` AS `parent` ON `parent`.`id` = `c`.`parent_id` LEFT JOIN `jmla_content_rating` AS `v` ON `a`.`id` = `v`.`content_id` WHERE ( (`a`.`id` = :pk AND `c`.`published` > 0) AND (`a`.`publish_up` IS NULL OR `a`.`publish_up` <= :publishUp)) AND (`a`.`publish_down` IS NULL OR `a`.`publish_down` >= :publishDown) AND `a`.`state` IN (:preparedArray1,:preparedArray2)719μs22.13KBParams/components/com_content/src/Model/ArticleModel.php:215Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `jmla_categories` AS `s` INNER JOIN `jmla_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`828μs3.91KBParams/libraries/src/Categories/Categories.php:375Copy
  • SELECT `m`.`tag_id`,`t`.* FROM `jmla_contentitem_tag_map` AS `m` INNER JOIN `jmla_tags` AS `t` ON `m`.`tag_id` = `t`.`id` WHERE `m`.`type_alias` = :contentType AND `m`.`content_item_id` = :id AND `t`.`published` = 1 AND `t`.`access` IN (:preparedArray1,:preparedArray2)546μs3.97KBParams/libraries/src/Helper/TagsHelper.php:388Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `jmla_categories` AS `s` INNER JOIN `jmla_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`668μs3.91KBParams/libraries/src/Categories/Categories.php:375Copy
  • SELECT DISTINCT a.id, a.title, a.name, a.checked_out, a.checked_out_time, a.note, a.state, a.access, a.created_time, a.created_user_id, a.ordering, a.language, a.fieldparams, a.params, a.type, a.default_value, a.context, a.group_id, a.label, a.description, a.required, a.only_use_in_subform,l.title AS language_title, l.image AS language_image,uc.name AS editor,ag.title AS access_level,ua.name AS author_name,g.title AS group_title, g.access as group_access, g.state AS group_state, g.note as group_note FROM jmla_fields AS a LEFT JOIN `jmla_languages` AS l ON l.lang_code = a.language LEFT JOIN jmla_users AS uc ON uc.id=a.checked_out LEFT JOIN jmla_viewlevels AS ag ON ag.id = a.access LEFT JOIN jmla_users AS ua ON ua.id = a.created_user_id LEFT JOIN jmla_fields_groups AS g ON g.id = a.group_id LEFT JOIN `jmla_fields_categories` AS fc ON fc.field_id = a.id WHERE ( (`a`.`context` = :context AND (`fc`.`category_id` IS NULL OR `fc`.`category_id` IN (:preparedArray1,:preparedArray2)) AND `a`.`access` IN (:preparedArray3,:preparedArray4)) AND (`a`.`group_id` = 0 OR `g`.`access` IN (:preparedArray5,:preparedArray6)) AND `a`.`state` = :state) AND (`a`.`group_id` = 0 OR `g`.`state` = :gstate) AND `a`.`only_use_in_subform` = :only_use_in_subform ORDER BY a.ordering ASC1.07ms4.75KBParams/libraries/src/MVC/Model/BaseDatabaseModel.php:164Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `jmla_categories` AS `s` INNER JOIN `jmla_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`903μs3.91KBParams/libraries/src/Categories/Categories.php:375Copy
  • SELECT * FROM `jmla_schemaorg` WHERE `itemId` = :itemId AND `context` = :context250μs2.8KBParams/plugins/system/schemaorg/src/Extension/Schemaorg.php:406Copy
  • SELECT `a`.`id`,`a`.`asset_id`,`a`.`title`,`a`.`alias`,`a`.`introtext`,`a`.`fulltext`,`a`.`state`,`a`.`catid`,`a`.`created`,`a`.`created_by`,`a`.`created_by_alias`,`a`.`modified`,`a`.`modified_by`,`a`.`checked_out`,`a`.`checked_out_time`,`a`.`publish_up`,`a`.`publish_down`,`a`.`images`,`a`.`urls`,`a`.`attribs`,`a`.`version`,`a`.`ordering`,`a`.`metakey`,`a`.`metadesc`,`a`.`access`,`a`.`hits`,`a`.`metadata`,`a`.`featured`,`a`.`language`,`fp`.`featured_up`,`fp`.`featured_down`,`c`.`title` AS `category_title`,`c`.`alias` AS `category_alias`,`c`.`access` AS `category_access`,`c`.`language` AS `category_language`,`fp`.`ordering`,`u`.`name` AS `author`,`parent`.`title` AS `parent_title`,`parent`.`id` AS `parent_id`,`parent`.`path` AS `parent_route`,`parent`.`alias` AS `parent_alias`,`parent`.`language` AS `parent_language`,ROUND(`v`.`rating_sum` / `v`.`rating_count`, 1) AS `rating`,`v`.`rating_count` AS `rating_count` FROM `jmla_content` AS `a` INNER JOIN `jmla_categories` AS `c` ON `c`.`id` = `a`.`catid` LEFT JOIN `jmla_content_frontpage` AS `fp` ON `fp`.`content_id` = `a`.`id` LEFT JOIN `jmla_users` AS `u` ON `u`.`id` = `a`.`created_by` LEFT JOIN `jmla_categories` AS `parent` ON `parent`.`id` = `c`.`parent_id` LEFT JOIN `jmla_content_rating` AS `v` ON `a`.`id` = `v`.`content_id` WHERE ( (`a`.`id` = :pk AND `c`.`published` > 0) AND (`a`.`publish_up` IS NULL OR `a`.`publish_up` <= :publishUp)) AND (`a`.`publish_down` IS NULL OR `a`.`publish_down` >= :publishDown) AND `a`.`state` IN (:preparedArray1,:preparedArray2)548μs22.17KBParams/components/com_content/src/Model/ArticleModel.php:215Copy
  • SELECT `a`.`id`,`a`.`asset_id`,`a`.`title`,`a`.`alias`,`a`.`introtext`,`a`.`fulltext`,`a`.`state`,`a`.`catid`,`a`.`created`,`a`.`created_by`,`a`.`created_by_alias`,`a`.`modified`,`a`.`modified_by`,`a`.`checked_out`,`a`.`checked_out_time`,`a`.`publish_up`,`a`.`publish_down`,`a`.`images`,`a`.`urls`,`a`.`attribs`,`a`.`version`,`a`.`ordering`,`a`.`metakey`,`a`.`metadesc`,`a`.`access`,`a`.`hits`,`a`.`metadata`,`a`.`featured`,`a`.`language`,`fp`.`featured_up`,`fp`.`featured_down`,`c`.`title` AS `category_title`,`c`.`alias` AS `category_alias`,`c`.`access` AS `category_access`,`c`.`language` AS `category_language`,`fp`.`ordering`,`u`.`name` AS `author`,`parent`.`title` AS `parent_title`,`parent`.`id` AS `parent_id`,`parent`.`path` AS `parent_route`,`parent`.`alias` AS `parent_alias`,`parent`.`language` AS `parent_language`,ROUND(`v`.`rating_sum` / `v`.`rating_count`, 1) AS `rating`,`v`.`rating_count` AS `rating_count` FROM `jmla_content` AS `a` INNER JOIN `jmla_categories` AS `c` ON `c`.`id` = `a`.`catid` LEFT JOIN `jmla_content_frontpage` AS `fp` ON `fp`.`content_id` = `a`.`id` LEFT JOIN `jmla_users` AS `u` ON `u`.`id` = `a`.`created_by` LEFT JOIN `jmla_categories` AS `parent` ON `parent`.`id` = `c`.`parent_id` LEFT JOIN `jmla_content_rating` AS `v` ON `a`.`id` = `v`.`content_id` WHERE ( (`a`.`id` = :pk AND `c`.`published` > 0) AND (`a`.`publish_up` IS NULL OR `a`.`publish_up` <= :publishUp)) AND (`a`.`publish_down` IS NULL OR `a`.`publish_down` >= :publishDown) AND `a`.`state` IN (:preparedArray1,:preparedArray2)495μs22.17KBParams/components/com_content/src/Model/ArticleModel.php:215Copy
  • SELECT SUM(CASE WHEN `a`.`next_execution` <= :now THEN 1 ELSE 0 END) AS due_count,SUM(CASE WHEN `a`.`locked` IS NULL THEN 0 ELSE 1 END) AS locked_count FROM `jmla_scheduler_tasks` AS `a` WHERE `a`.`state` = 1327μs1.37KBParams/administrator/components/com_scheduler/src/Model/TasksModel.php:517Copy
  • SELECT `session_id` FROM `jmla_session` WHERE `session_id` = ?286μs1KBParams/libraries/vendor/joomla/session/src/Handler/DatabaseHandler.php:277Copy
  • UPDATE `jmla_session` SET `data` = ? , `time` = ? WHERE `session_id` = ?7.26ms592BParams/libraries/vendor/joomla/session/src/Handler/DatabaseHandler.php:301Copy