, but this code // executes before the first paint, when

Âé¶¹Çø

is not yet present. The // classes are added to so styling immediately reflects the current // toolbar state. The classes are removed after the toolbar completes // initialization. const classesToAdd = ['toolbar-loading', 'toolbar-anti-flicker']; if (toolbarState) { const { orientation, hasActiveTab, isFixed, activeTray, activeTabId, isOriented, userButtonMinWidth } = toolbarState; classesToAdd.push( orientation ? `toolbar-` + orientation + `` : 'toolbar-horizontal', ); if (hasActiveTab !== false) { classesToAdd.push('toolbar-tray-open'); } if (isFixed) { classesToAdd.push('toolbar-fixed'); } if (isOriented) { classesToAdd.push('toolbar-oriented'); } if (activeTray) { // These styles are added so the active tab/tray styles are present // immediately instead of "flickering" on as the toolbar initializes. In // instances where a tray is lazy loaded, these styles facilitate the // lazy loaded tray appearing gracefully and without reflow. const styleContent = ` .toolbar-loading #` + activeTabId + ` { background-image: linear-gradient(rgba(255, 255, 255, 0.25) 20%, transparent 200%); } .toolbar-loading #` + activeTabId + `-tray { display: block; box-shadow: -1px 0 5px 2px rgb(0 0 0 / 33%); border-right: 1px solid #aaa; background-color: #f5f5f5; z-index: 0; } .toolbar-loading.toolbar-vertical.toolbar-tray-open #` + activeTabId + `-tray { width: 15rem; height: 100vh; } .toolbar-loading.toolbar-horizontal :not(#` + activeTray + `) > .toolbar-lining {opacity: 0}`; const style = document.createElement('style'); style.textContent = styleContent; style.setAttribute('data-toolbar-anti-flicker-loading', true); document.querySelector('head').appendChild(style); if (userButtonMinWidth) { const userButtonStyle = document.createElement('style'); userButtonStyle.textContent = `#toolbar-item-user {min-width: ` + userButtonMinWidth +`px;}` document.querySelector('head').appendChild(userButtonStyle); } } } document.querySelector('html').classList.add(...classesToAdd); })(); Nathan Weflen | Âé¶¹Çø

Âé¶¹Çø

Skip to main content

Nathan Weflen

Assistant Professor

Biography

Nathan Weflen serves as Assistant Professor of Finance at Âé¶¹Çøâ€™s School of Business. He began his work at Calvin in 2021, initially leading the Nexus Program and later transitioning into teaching after roles as an adjunct professor and visiting lecturer. He brings a wide range of industry experience to the classroom, with a background in finance, project management, real estate, and corporate sales.

Before coming to Calvin, Nathan worked in B2B sales with , a Berkshire Hathaway company, managing a Chicago-area territory. Prior, he held positions at in New York and Salt Lake City, working as a trading operations analyst and later as an alternative investments analyst. 

Outside of academia, Nathan has been involved in real estate since 2017, developing a multi-family investment portfolio in Grand Rapids.

Nathan holds a BS in Finance from Cornerstone University and an MBA with a finance concentration from Âé¶¹Çø.

Outside of vocational time, he enjoys fly fishing, camping, supporting Manchester United, and spending quality time with his family. He lives in the South Hills neighborhood of Grand Rapids.

Education

  • BS – Finance – Cornerstone University
  • MBA – Âé¶¹Çø

Professional Experience

  • Alternative Investment Analyst – Goldman Sachs
  • Territory Manager – Shaw Industries