Description
Senior Software Developer
The Senior SW Developer job performs installation, configuration, and maintenance of information technology (IT) systems software and hardware for multi-user server computers. Working independently under general supervision, this job maintains end user needs by ensuring the uptime; performance, resource availability, and security of the computers are within established operational guidelines.
Key Responsibilities and Duties
• Performs routine analysis during normal of information technology (IT) infrastructure, including on networks, firewalls, servers, operating systems, applications and devices.
• Supports the acquiring, installing, and upgrading computer components and software and planning for service outages and other problems.
• Maintains the automation of routine tasks using scripting and writing basic computer programs to address more complex systems software configuration and enhancement.
• Implements domain solutions and executes changes in line with the implementation plan.
• Helps senior domain administrators with trouble shooting of day-to-day domain issues.
• Configures servers and associated routers to ensure their smooth and reliable operation.
• Creates documentation as it relates to domain configuration, routing, processes, and service records.
• Updates current documentation of all equipment under operational control.
Educational Requirements
• University (Degree) Preferred
Work Experience
• 2+ Years Required; 3+ Years Preferred
Physical Requirements
• Physical Requirements: Sedentary Work
Career Level
6IC
Position Summary
A DevOps Engineer understands the needs and challenges of both application development and system configuration and operations. Develops and supports Continuous Integration/Continuous Delivery (CI/CD) systems, Cloud Deployment Architectures, Automated Provisioning/Deployment/Testing Frameworks, as well as application Monitoring and Performance Validation, through the establishment and adoption of DevOps principles in the midst of active project delivery.
The ideal candidate should have experience in the creation of CI/CD systems, encapsulate knowledge and hands on experience in both development and system configuration, plus demonstrate the ability to interact, develop, engineer and communicate collaboratively with multiple development and infrastructure teams. Although few candidates will have the entire skillset the team is looking for someone who is motivated to fix problems and learn new as they go while contributing to the team in skill areas they currently possess.
Development Focus
This position is for an experienced developer with operations/system administration skills looking to bring both skill sets to bear in developing a new, robust continuous integration environment through partnerships with development teams and infrastructure organizations.
Recommended Qualifications
• Bachelor’s Degree in Computer Science or related field or Associates degree and 2+ years of IT experience
• 2-4 years of experience in a software development environment
Knowledge and Skills
• Solid experience in continuous integration servers and tools (Jenkins, Electric Flow, etc.)
• Experience with automated build pipeline, continuous integration and continuous deployment
• Experience in Agile, and Continuous Delivery, and DevOps practices
• Strong experience with repository management tools - Artifactory
• Proficient in Scripting languages (Bash, Python, Perl )
• Exhibits problem solving skills
• Has knowledge of JUnit Testing
• SCM tools (Git, Jira)
• Build tools (Maven, Gradle)
• Containerization (Docker, Kubernetes, OpenShift)
• Cloud Provider (AWS, GCP)
• Configuration and Provisioning Management (Puppet, Chef, Ansible)
• Familiarity with static and dynamic analysis tools (SonarQube, etc.)
• Application servers, servlet containers, and web servers (WebSphere, Tomcat)
• Exposure to concepts of metrics/Audit/Logging/etc using Splunk/ ELK/ or others.
• Working experience on Linux (RHEL, Ubuntu)
Roles and Responsibilities
• Uses a wide variety of open source technologies and tools
• Able to take direction and follow through to completion
• Experience with systems and IT operations to turn requirements into code
• Supports developers through automation of CI/CD systems allowing nore efficient development, build, deployment and testing of software
• Is able to learn, maintain, and automate processes for existing applications
• Effectively collaborates and communicates with development and infrastructure teams
• Understands the infrastructure, process, procedures, and solutions at Envisage and TIAA.
• Produces appropriate documentation
Work Style
• Demonstrates the ability to interact, communicate, and work collaboratively with multiple teams and organizations.
• Is honest and ethical
• Demonstrates problem solving abilities and self-learning
• Has the ability to work with self-guidance and without supervision
• Addresses issues and solves problems in a timely fashion