Submit Your Resume

Upload File

Drop files here Or click here to upload the files

Is this not the right job for you? Create a job alert to be notified when a job that matches your criteria is posted.

Job Title: Software Engineer (Backend) – Agile

Location: United States-IL-Chicago

 

Overview:

What will your day look like?

You will be responsible for the design, development and implementation of our Digital Platform in a highly collaborative and inclusive agile team. Work involves moderate difficulty while working on multiple and complex high visibility features concurrently. Resources to do the job require foundational technical knowledge of full stack solution development utilizing .NET/Web technologies, structured programming concepts, architecture and process enhancement. Responsibilities are focused on applying industry standard software engineering practices to all aspects of software development lifecycle and delivering high quality results. General direction is received from the Manager of Software Engineering.

 

Responsibilities:

  Do you see yourself doing this?

 

.NET/Web Application & API Development

  • Design, develop, enhance, and maintain web application solutions collaborating with and across Agile teams using full stack software development tools and technologies.
  • Design, Develop and Implement RESTful microservices and cloud ready web application solutions.
  • Analyze business needs and develop software solutions for external and internal customers utilizing cutting edge web technologies with the aim of optimizing member experience and operational efficiency partnering with senior/principal engineers, architects and scrum team members.
  • Analyze and design application database solutions, collaborating database development efforts across organization.
  • Responsible for full life cycle development of web-based applications including design, implementation, testing and maintenance of simple to moderately complex software applications and subsystems.
  • Conduct detailed analysis of system interactions to determine technical solutions and resolve problems which are cost effective and consistent with user needs, system capacities and capabilities.
  • Participate in peer code reviews and learn/apply best practices partnering with senior engineers and architect.

 

Project Management

  • Work on multiple highly visible projects and/or features concurrently following SAFe agile team practices and own them end to end.
  • Utilize effective Agile management techniques in grooming, planning, estimating, and completing assignments collaborating with team members.

 

Maintenance 

  • Work with the Service Desk and/or Application Reliability Support Engineers to troubleshoot complex problems and member service issues, if/when needed.
  • Identify and implement solutions to complex issues that are related to production level code defects or process changes.

 

Adhere to and ensure compliance of all business transactions with policy and process of the Bank Secrecy Act.  Ensures compliance with all applicable state and federal laws, company procedures and policies. Maintains integrity and ethics in all actions and conversations with or regarding  members and their accounts; complies with Privacy Act directives.

 

Where permitted by applicable law, successful applicants to this position must either have received or be willing to receive the COVID-19 vaccination by date of hire to be considered (proof of vaccination is required), or be willing to submit a negative COVID-19 test result in advance of each visit to an facility.

 

Qualifications:

What makes you a great fit?

You’ll be a great fit if you have a completion of a Bachelor’s degree in Computer Science or a related field, and you have:

 

  • Minimum 3 years’ experience in web-based application development using .NET or other similar technologies.
  • Experience or Knowledge in the following or similar:
    • Application Layer Technologies: .NET framework, .NET Core,  C#, ASP.NET, Entity Framework, ADO.NET, WCF, SOAP, XML, WSDL, REST based API
    • Database Layer Technologies: MS SQL, Stored Procedures, Views, SQL dacpac
    • Software Development Methodology: Agile development methodology, Technical Designs, Business requirement gathering, Multi-tier applications with thorough knowledge and experience in each layer
    • Content Management and Source Control: SharePoint and Azure DevOps, Git
    • Testing Technologies: Automated E2E API Testing using nUnit, xUnit or similar, Web Application security testing using OWASP
    • User Interface Technologies: MVC, AJAX, JSON, HTML, CSS, JavaScript, jQuery, Angular 11+ or Comparable JavaScript Framework is plus
    • Experience with Developing in Azure Cloud is plus
  • Experience in TDD, continuous integration, and code review practice is strongly desired
  • Engagement and collaboration skills and ability to successfully work in a team environment
  • Experience with object-oriented programming and design concepts
  • Ability to have ownership and autonomy to work on tasks and be pro-active in managing them end to end
  • Ability to adapt in a fast-paced and changing environment

 

When you’re happy, we’re happy!

As a thank you for joining our team, you’ll benefit from:

 

  • Competitive medical, dental, and free vision benefits
  • Competitive compensation plan
  • Contributions towards gym memberships
  • Generous PTO and banking holidays off

 

 

FacebookTwitter
[gravityform id="7" title="false" description="false"]
<script type="text/javascript">var gform;gform||(document.addEventListener("gform_main_scripts_loaded",function(){gform.scriptsLoaded=!0}),window.addEventListener("DOMContentLoaded",function(){gform.domLoaded=!0}),gform={domLoaded:!1,scriptsLoaded:!1,initializeOnLoaded:function(o){gform.domLoaded&&gform.scriptsLoaded?o():!gform.domLoaded&&gform.scriptsLoaded?window.addEventListener("DOMContentLoaded",o):document.addEventListener("gform_main_scripts_loaded",o)},hooks:{action:{},filter:{}},addAction:function(o,n,r,t){gform.addHook("action",o,n,r,t)},addFilter:function(o,n,r,t){gform.addHook("filter",o,n,r,t)},doAction:function(o){gform.doHook("action",o,arguments)},applyFilters:function(o){return gform.doHook("filter",o,arguments)},removeAction:function(o,n){gform.removeHook("action",o,n)},removeFilter:function(o,n,r){gform.removeHook("filter",o,n,r)},addHook:function(o,n,r,t,i){null==gform.hooks[o][n]&&(gform.hooks[o][n]=[]);var e=gform.hooks[o][n];null==i&&(i=n+"_"+e.length),gform.hooks[o][n].push({tag:i,callable:r,priority:t=null==t?10:t})},doHook:function(n,o,r){var t;if(r=Array.prototype.slice.call(r,1),null!=gform.hooks[n][o]&&((o=gform.hooks[n][o]).sort(function(o,n){return o.priority-n.priority}),o.forEach(function(o){"function"!=typeof(t=o.callable)&&(t=window[t]),"action"==n?t.apply(null,r):r[0]=t.apply(null,r)})),"filter"==n)return r[0]},removeHook:function(o,n,t,i){var r;null!=gform.hooks[o][n]&&(r=(r=gform.hooks[o][n]).filter(function(o,n,r){return!!(null!=i&&i!=o.tag||null!=t&&t!=o.priority)}),gform.hooks[o][n]=r)}});</script> <div class='gf_browser_unknown gform_wrapper gform_legacy_markup_wrapper' id='gform_wrapper_7' ><form method='post' enctype='multipart/form-data' id='gform_7' action='/surf_jobs/sr-software-engineer-backend-agile-chicago-il-a4499f84-2/' novalidate> <div class='gform_body gform-body'><ul id='gform_fields_7' class='gform_fields top_label form_sublabel_below description_below'><li id="field_7_7" class="gfield gfield_contains_required field_sublabel_below field_description_below gfield_visibility_visible" data-js-reload="field_7_7"><label class='gfield_label' for='input_7_7' >First name<span class="gfield_required"><span class="gfield_required gfield_required_asterisk">*</span></span></label><div class='ginput_container ginput_container_text'><input name='input_7' id='input_7_7' type='text' value='' class='large' aria-required="true" aria-invalid="false" /> </div></li><li id="field_7_8" class="gfield gfield_contains_required field_sublabel_below field_description_below gfield_visibility_visible" data-js-reload="field_7_8"><label class='gfield_label' for='input_7_8' >Last name<span class="gfield_required"><span class="gfield_required gfield_required_asterisk">*</span></span></label><div class='ginput_container ginput_container_text'><input name='input_8' id='input_7_8' type='text' value='' class='large' aria-required="true" aria-invalid="false" /> </div></li><li id="field_7_1" class="gfield gfield_contains_required field_sublabel_below field_description_below gfield_visibility_visible" data-js-reload="field_7_1"><label class='gfield_label' for='input_7_1' >Email<span class="gfield_required"><span class="gfield_required gfield_required_asterisk">*</span></span></label><div class='ginput_container ginput_container_email'> <input name='input_1' id='input_7_1' type='email' value='' class='medium' aria-required="true" aria-invalid="false" /> </div></li><li id="field_7_10" class="gfield gfield--width-full gfield_contains_required field_sublabel_below field_description_below gfield_visibility_visible" data-js-reload="field_7_10"><label class='gfield_label' for='input_7_10' >Phone number<span class="gfield_required"><span class="gfield_required gfield_required_asterisk">*</span></span></label><div class='ginput_container ginput_container_phone'><input name='input_10' id='input_7_10' type='tel' value='' class='large' aria-required="true" aria-invalid="false" /></div></li><li id="field_7_11" class="gfield gfield--width-full gfield_contains_required field_sublabel_below field_description_below gfield_visibility_visible" data-js-reload="field_7_11"><label class='gfield_label' for='input_7_11' >Which industry do you work in?<span class="gfield_required"><span class="gfield_required gfield_required_asterisk">*</span></span></label><div class='ginput_container ginput_container_text'><input name='input_11' id='input_7_11' type='text' value='' class='large' aria-required="true" aria-invalid="false" /> </div></li><li id="field_7_12" class="gfield gfield--width-full gfield_contains_required field_sublabel_below field_description_below gfield_visibility_visible" data-js-reload="field_7_12"><label class='gfield_label' for='input_7_12' >Upload my resume<span class="gfield_required"><span class="gfield_required gfield_required_asterisk">*</span></span></label><div class='ginput_container ginput_container_fileupload'><input type='hidden' name='MAX_FILE_SIZE' value='838860800' /><input name='input_12' id='input_7_12' type='file' class='large' aria-describedby="gfield_upload_rules_7_12" onchange='javascript:gformValidateFileSize( this, 838860800 );' /><span class='gform_fileupload_rules' id='gfield_upload_rules_7_12'>Max. file size: 800 MB.</span><div class='validation_message validation_message--hidden-on-empty' id='live_validation_message_7_12'></div></div></li><li id="field_7_13" class="gfield gform_validation_container field_sublabel_below field_description_below gfield_visibility_visible" data-js-reload="field_7_13"><label class='gfield_label' for='input_7_13' >Name</label><div class='ginput_container'><input name='input_13' id='input_7_13' type='text' value='' autocomplete='new-password'/></div><div class='gfield_description' id='gfield_description_7_13'>This field is for validation purposes and should be left unchanged.</div></li></ul></div> <div class='gform_footer top_label'> <input type="submit" id="gform_submit_button_7" class="gform_button button om-trigger-conversion" value="Submit" onclick='if(window["gf_submitting_7"]){return false;} if( !jQuery("#gform_7")[0].checkValidity || jQuery("#gform_7")[0].checkValidity()){window["gf_submitting_7"]=true;} ' onkeypress='if( event.keyCode == 13 ){ if(window["gf_submitting_7"]){return false;} if( !jQuery("#gform_7")[0].checkValidity || jQuery("#gform_7")[0].checkValidity()){window["gf_submitting_7"]=true;} jQuery("#gform_7").trigger("submit",[true]); }'> <input type='hidden' class='gform_hidden' name='is_submit_7' value='1' /> <input type='hidden' class='gform_hidden' name='gform_submit' value='7' /> <input type='hidden' class='gform_hidden' name='gform_unique_id' value='' /> <input type='hidden' class='gform_hidden' name='state_7' value='WyJbXSIsIjYzZTkzNzhkY2Y1YmUzYzkyOTg0MmI4YmYyZWI5OGVkIl0=' /> <input type='hidden' class='gform_hidden' name='gform_target_page_number_7' id='gform_target_page_number_7' value='0' /> <input type='hidden' class='gform_hidden' name='gform_source_page_number_7' id='gform_source_page_number_7' value='1' /> <input type='hidden' name='gform_field_values' value='' /> </div> </form> </div>
["gf_submitting_3"]
["gf_submitting_3"]
[true]
[true]
[3, 1]
[3, 1]
[2, 1]
[2, 1]
["gf_submitting_3"]
["gf_submitting_3"]
[true]
[true]
[3, 1]
[3, 1]
["gf_submitting_3"]
["gf_submitting_3"]
[true]
[true]
[3, 1]
[3, 1]
["gf_submitting_3"]
["gf_submitting_3"]
[true]
[true]
[3, 1]
[3, 1]
["gf_submitting_3"]
["gf_submitting_3"]
[true]
[true]
[3, 1]
[3, 1]