I. Job Summary | Major goals and objectives.
The Senior Systems Engineer, Content Systems serves as a subject matter expert and works with the Lead System Engineer, Business Analysts and the Business Unit team to provide IT solutions for business needs that exceed functional expectations consistent with the values of the company. Owns the responsibility for the technical functionality of IT systems and platforms including servers, client applications, tests, key performance indicators and overall technical quality. Builds infrastructure solutions and platforms for Business Unit components and products mainly based on, but not limited to – Digital Asset Management systems. Delivers high-quality IT systems and infrastructure designs with an eye for building the designed systems accounting for existing technical debt, any development bottlenecks and architecture initiatives to drive service delivery, optimize cost and support established business goals. Communicates and accurately documents all decisions, plans, goals, functional and non-functional requirements. Serves as the subject matter expert for service delivery of the scope of the built system by designing, reviewing and overseeing implementation of end-to-end integrated systems, enterprise data and metadata structures, as well as internal systems such as product deployment. Performs other duties as assigned by management.
II. Essential Job Functions
Accountabilities, Actions and Expected Measurable Results
Support, Maintenance, Integration and Implementation.
- Participate in 24/7/365 on-call rotation and respond to emergencies as needed
- Master the Content Systems technology stack
- Research and implement new features and functionality
- Build and configure servers in a development, test and production environments
- Install software and web applications running on different OS and web servers
- Maintain and create Unix tools as necessary to manage the platform and to help increase automation
- Write scripts to automate application tasks as well as other operational automation initiatives
- Ensure proper monitoring is established for all systems
- Duties include patching, troubleshooting, performance tuning and security compliance updates
- Design, execute and coordinate production migrations, updates, and operational initiatives
- Document systems architecture, infrastructure and procedures
- Establishes functional and technical specifications, solves hardware/software interface problems, defines input/output parameters, and ensures integration of the entire system or subsystem
- Familiar with disaster recovery and high availability requirements
- Act as a technical resource to assist in customer escalations
- Acts as Content Systems Team Lead when necessary
- Design, implement, code, test, document, and maintain system integration solutions to systems or subsystems.
- Develop internal tools, RESTfull services and clients, primarily in Java.
- Apply advanced troubleshooting/debugging techniques to root cause incoming tickets.
- Analyze service architecture, metrics/thresholds, and make recommendations to maximize system performance.
- Define, code, organize and maintain automated regression test suites
- Responding to and resolving emergent service problems; writing software and building automation to prevent problem recurrence.
Build, Deployment and Release Management
- Lead the Build, Deployment and Release Management for Web Applications
- Deploy built software artifacts to Development, QA, Integration, UAT, Staging, Load and Production environments
- Practical Experience configuring Continuous Integration and/or Continuous Delivery pipelines
- Ensure Continuous Integration and Delivery through SDLC. Work with Development, QA and Operations to guarantee prompt, accurate, and repeatable delivery of the builds
- Develop scripts for configuration generation and deployment automation
- Fulfills mentor-like responsibilities
- Provides training and support to junior members of the team
III. Minimum Qualifications and Job Requirements | All must be met to be considered.
Bachelors Degree in Computer Science or similar related field or equivalent training and/or experience.
Minimum 7 years experience in technology architecture, systems programming and analysis.
5+ years of experience in one or more scripting languages (shell, Perl, Python, etc.)
5+ years experience in networking (DNS, TCP/IP, SSL, DHCP, Load Balancing), web services (SOAP, XML, JSON), and UNIX fundamentals.
5+ years experience writing advanced level database queries.
Along with least 5 Years of experience and knowledge of:
- Build Tools
- Continues Integration
- Automated Testing
Specific Knowledge, Skills and Abilities:
Ability to adapt to an Agile work environment
Deploying and configuring web servers such as IIS, Jetty, JBoss
Familiar with Active Directory, LDAP, and SSO implementations
Understanding of versioning tools such as git
Performance profiling and tuning of App/Web tier
Experience with monitoring and /or application performance tools - New Relic, AppDynamics, Zabbix, Nagios, Graphite, etc.
Troubleshooting experience tracking down performance, load, networking, I/O utilization, and memory problems
Experience with virtual machine technology, load balancing, and fault tolerant architectures
Knowledge of Linux internals and command-line tools
Must have strong scripting skills to support infrastructure automation, such as Python, Perl, or Shell scripts
Familiar with tools like Splunk, ElasticSearch, Solr, Jenkins, SonarQube, Rundeck, etc.
Highly responsible, self-disciplined, self-managed, self-motivated
Meticulous attention to detail and excellent software/hardware troubleshooting skills
Passion to understand, learn, and dissect new technologies quickly on your own
Excellent verbal and written communication skills
Knowledge of WebOps/OWASP security principles
Knowledge of 12 Factor application design principles
% Travel Required (Approximate): 10%