Header Navigation

Mobile Navigation

Hero - Diversity and Inclusion

Diversity & inclusion

View our Audit & Tax opportunities

D and I - content

Diversity & Inclusion

At Smith & Williamson we believe that diversity of talent and ideas are vital to creating a positive work environment and delivering excellent client service.

We are committed to attracting, developing and retaining a wide range of talented people regardless of gender, race, age, sexual orientation, disability, religion, beliefs or any other characteristic.

Women in Finance Charter

As part of our diversity and inclusion commitment, Smith & Williamson is proud to be a signatory of HM Treasury’s Women in Finance Charter, which seeks to improve gender balance within the financial services sector.

Signatories to the Charter pledge to support the progression of women into senior roles, set measurable targets and to report publicly on delivery against the targets each year.

In striving for greater gender balance across our business the firm has set a target to increase the percentage of women in senior management roles to 30% by 2022.

When we signed up to the Charter on 31 July 2017 we reported that 24.94% of senior management roles at Smith & Williamson were held by women. By the end of August 2020 we are pleased to report that we had increased that number to 28.38%. Based on our progress to date we believe that we are on track to meet our Charter objective to increase the percentage of women in senior management to 30% by our deadline of 31 July 2022.

CTA Footer

Are you interested?

View all opportunities

Footer

حصل خطأ عند معالجة القالب.
The following has evaluated to null or missing:
==> propsUtil.get(ucmLocaleKey)  [in template "64056#64102#365043" at line 5, column 19]

----
Tip: If the failing expression is known to legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)??
----

----
FTL stack trace ("~" means nesting-related):
	- Failed at: #assign locale = propsUtil.get(ucmLoc...  [in template "64056#64102#365043" at line 5, column 1]
----
1<div id="outer-footer" class="updatedFooter" style="padding-left: 0px; width: 1640px;"> 
2	 <div id="inner-footer-expert" class=""> 
3 
4<#assign ucmLocaleKey = themeDisplay.getLocale()+"."+siteType+"."+"ucmLocale"> 
5<#assign locale = propsUtil.get(ucmLocaleKey)/> 
6<#assign apiUrl = propsUtil.get("WEB72_API_DOMAIN")/> 
7 
8<#assign lr74CutoverCountryCode = propsUtil.get("LR74_CUTOVER_COUNTRY_CODE")/> 
9<#assign hays_logo = propsUtil.get("HAYS_LOGO")/> 
10 
11<#if lr74CutoverCountryCode??> 
12<#list lr74CutoverCountryCode?split(",") as countryCode> 
13 <#if countryCode = themeDisplay.getLocale()?keep_after_last("_") > 
14    <#assign apiUrl = propsUtil.get("API_DOMAIN")/> 
15 </#if> 
16</#list> 
17</#if> 
18 
19<#attempt> 
20 
21<#assign PortalCacheHelperUtil = staticUtil["com.liferay.portal.kernel.cache.PortalCacheHelperUtil"]> 
22<#assign PortalCacheManagerNames = staticUtil["com.liferay.portal.kernel.cache.PortalCacheManagerNames"]> 
23<#assign cacheName = "EXPERT_FOOTER_TEMPLATE_CACHE"> 
24<#assign cacheKey = "footerResponse_" + locale> 
25<#assign cache = PortalCacheHelperUtil.getPortalCache(PortalCacheManagerNames.SINGLE_VM,cacheName)> 
26<#assign response = (cache.get(cacheKey))?default("")> 
27 
28 
29<#if response?has_content> 
30<#assign responseObj = jsonFactoryUtil.createJSONObject(response)> 
31<#else> 
32<#assign response = httpUtil.URLtoString(apiUrl+"/o/HaysContentStructure/getcontentstructure/expertFooter/"+locale)> 
33<#assign responseObj = jsonFactoryUtil.createJSONObject(response)> 
34  ${cache.put(cacheKey,response,86400)} 
35</#if> 
36 
37<#if  responseObj?? && responseObj.results?? && responseObj.results?has_content> 
38<#assign getResponseResultArray = responseObj.getJSONArray("results")> 
39<div id="footer-bottom"> 
40 <#if getResponseResultArray.length() gt 0> 
41 <#assign siteUrl = getResponseResultArray.get(0).siteUrl> 
42 
43 <#if getResponseResultArray.get(0).getJSONArray("GroupHeading")?? && getResponseResultArray.get(0).getJSONArray("GroupHeading").length()?? && getResponseResultArray.get(0).getJSONArray("GroupHeading").length() gt 1> 
44 
45 <#assign groupHeadingArr = getResponseResultArray.get(0).getJSONArray("GroupHeading")> 
46 	<div class="row single-col gpHeading"> 
47	 <div class="col col-12"> 
48		 <nav> 
49			<ul> 
50			<#list 0 ..< groupHeadingArr.length()?number as i> 
51			    <#if groupHeadingArr.get(i).Link?starts_with("/")> 
52			     <#assign linkUrl = siteUrl + groupHeadingArr.get(i).Link> 
53					<li> 
54						<a href="${linkUrl}" target="">${groupHeadingArr.get(i).GroupHeading}</a> 
55					</li> 
56				<#else> 
57				    <li> 
58						<a href="${groupHeadingArr.get(i).Link}" target="">${groupHeadingArr.get(i).GroupHeading}</a> 
59					</li> 
60				</#if> 
61			</#list> 
62			</ul> 
63		  </nav> 
64		 </div> 
65	  </div> 
66	 <#elseif getResponseResultArray.get(0).getJSONArray("FooterLink")??> 
67	 <#assign FooterLinkArr = getResponseResultArray.get(0).getJSONArray("FooterLink")> 
68	 <div class="row single-col gpHeading"> 
69		<div class="col col-12"> 
70		 <nav> 
71			<ul> 
72			<#list 0 ..< FooterLinkArr.length()?number as i> 
73			     <#assign linkUrl = FooterLinkArr.get(i).FooterLink?replace("href=\"/", "href=\""+siteUrl+"/" ) > 
74					<li> 
75						${linkUrl} 
76					</li> 
77			</#list> 
78			</ul> 
79		  </nav> 
80		 </div> 
81	  </div> 
82 
83	 </#if> 
84 
85 
86	 	<div class="footer-added"> 
87 			<img src="${hays_logo}"></img> 
88 			<div class="copyright"> 
89			<p> 
90	    	<p class="last">${getResponseResultArray.get(0).CopyrightHTML}</p> 
91 
92			</p> 
93			</div> 
94			</div> 
95	</#if> 
96</div> 
97</#if> 
98<#recover> 
99 
100</#attempt> 
101 
102 
103	</div> 
104</div> 
105<script> 
106window.addEventListener('DOMContentLoaded', function () { 
107    var consent = document.getElementById("teconsent"); 
108 
109    // Find the <ul> inside the nav of gpHeading 
110    var ulElement = document.querySelector(".gpHeading nav ul"); 
111 
112    if (consent && ulElement) { 
113        var liWrapper = document.createElement("li"); 
114        liWrapper.appendChild(consent); 
115        ulElement.appendChild(liWrapper); 
116    } else { 
117        console.log("Consent element or target UL not found."); 
118
119}); 
120 
121$(document).ready(function(){ 
122    if((Liferay.ThemeDisplay.getLanguageId() != "en_GB") && (location.href.indexOf("/web/") != -1)) { 
123	console.log("link update required on the site"); 
124	$('a').each(function(index) { 
125		var layoutRelativeUrl = Liferay.ThemeDisplay.getLayoutRelativeURL(); 
126        var getSiteUrl = layoutRelativeUrl.substring(0, layoutRelativeUrl.lastIndexOf("/")); 
127		var linkVal = $(this).attr("href"); 
128		if((typeof linkVal !== "undefined") && linkVal.indexOf("https") == -1 && linkVal.indexOf("/")!= -1 && (linkVal.indexOf("/") === linkVal.lastIndexOf("/"))){ 
129		var updatedLink = getSiteUrl + linkVal ; 
130		$(this).attr("href", updatedLink) 
131		console.log("link updated - " + updatedLink); 
132
133	}); 
134
135}); 
136</script>