Platform Engineer - Global Equities

  • Competitive
  • New York, NY, États-Unis New York NY US
  • CDI, Plein-temps
  • Bank of America Corporation
  • 21 juil. 18 2018-07-21

Platform Engineer - Global Equities

Job Description:

Job summary
The successful candidate will be part of the Equities Platform Engineering team based in New York. A successful applicant will need to possess a solid technical background, excellent inter-personal skills, and fine attention to detail. Their day-to-day responsibilities will include but are not limited to the following:

Tools - Provide tools to the production operations team to aid support
Standardization - Work with our global partners to standardize tools and instrumentation
Capacity management - Actively monitor our capacity statistics and invoke change where necessary.
Production architecture - Design the applications architecture with consideration on redundancy, scalability, load-balancing and disaster recovery.
Support - Assist with the day-to-day third level production support.
Documentation - Ensure that all tools have up-to-date documentation.

Department Summary
Platform Engineering provides an unparalleled level of service and support to the global Equities business globally. The work we perform can be summarized as:

Hardware / Application On-Boarding
• Responsible for on-boarding all in-house developed applications and associated hardware in accordance to well defined and well established procedure. The team work alongside the developers to ensure that their application adheres to the high standards expected of them. We work alongside the developers and QA team on on-boarding new applications to production. This is to make the new application conform the production architecture and configuration standard. Once the application is live, we will hand over all support responsibilities to the operations team, thus freeing ourselves to move onto the next project. The end result is that all hardware and in-house applications will have a consistent set-up for installation, configuration, monitoring, scheduling, releases and support.

Environment management
• Co-ordinate with SA and infrastructure team to make sure no negative impact on production.
• Performing regular reviews of the environments to ensure they still fit for purpose.
• Responsible for documenting the environments and ensuring they are kept up-to-date.

Capacity Planning
• Perform on-going monitoring on application components capacity and scale out if needed.
• Perform quarterly capacity reviews to identify hardware/application hot-spots and instigate change where necessary.

Change Management
• A large part of what we do is managing change, therefore its critical to have a good working relationship with many external parties. We are in regular contact with parties such as developers, business heads, unix operations, change management teams and application support teams to ensure the changes are applied successfully and adhere to the firms CM policy.

Release management
• We are a single point of contact for global application roll-outs, thus avoiding developers having to repeat the same instructions to different people in various regions.
• We work with the various development teams to ensure their apps are designed, set-up, packaged and configured in accordance with our requirements. Thus ensuring simple 'turnkey' releases.

Cost management
• We regularly review the environments to see if there is any under utilized hardware which can be downsized, reused or decommissioned, thus reducing our cost overhead.

Performance Monitoring

  • We continuously monitor all server performance data (CPU, memory, disk, NIC, etc) and make this available via real time monitoring and reporting dashboards. This can then be used for analyzing performance issues and performing regular capacity planning exercises.
    Latency Monitoring
    • Latency sensitive applications are monitored in real time, thus allowing the support team to respond quickly to latency issues, be they internal application issues or street-wide delays. Historical latency data is also stored to allow us to map application changes against their impact on latency.

    Application Monitoring
    • The team is responsible for administering and maintaining the monitoring tool (ITRS Geneos). Use of this tool ensures all applications are monitored in the same way with a consistent 'look and feel'. A standard approach for monitoring disk space, log files, processes, cpu utilization, memory, etc is applied to all servers with additional bespoke application monitoring added if required.

    Configuration Management
    • We define and maintain the standard build for all Linux servers and ensure that all new servers are built in line with them.
    • We define how the applications should be configured. We define the requirements for how the applications should be configured and developers must comply if they wish us to on-board and support their application.

    Tools
    • Responsible for developing and maintaining web based tools to aide in the day-to-day application support.

    Skills - required

  • Strong understanding of Linux operating systems
  • Excellent communication skills, methodical and a fine attention to detail
  • Unix shell / perl / python scripting skills
  • Experience with relational databases such as mysql
  • Database scripting skills
  • Previous Software Change Management (SCM) experience
  • Knowledge of networking infrastructure, such as TCP/IP, routers, firewalls, etc
    Skills - nice to have

  • Experience working in a high pressure trading environment
  • Experienced in a client facing role (in technology)
  • Experience with low/no touch trading applications
  • Experience working with source control systems
  • Experienced with web servers such as Apache
  • Experienced with Tibco EMS and RV
  • Experienced with kdb+
  • Experienced with ITRS Geneos


Shift:
1st shift (United States of America)

Hours Per Week:
40