Linux EngineerSample Job Descriptions, Salaries, and Interview Questions
Unix/Linux operating systems are important in today’s world, and a Linux engineer operates these systems. Not only will they be addressing any changes for their client, but they will also need to resolve user issues, identify potential issues, and implement protective measures. Basic job duties will include monitoring the network and performing server maintenance. This is a fast-paced job which will require a lot of experience monitoring hardware systems.
Linux engineers should be able to read logs, check user history, understand directory architecture, and be familiar with Linux Stacks. Since they will be working with both client and technical teams, Linux engineers should have strong communication skills and be flexible in their work schedules.
Sample job description #1
As an HPC Linux Systems Engineer you will work in the Infrastructure team within the HPC Infrastructure and Networking group to support all activities of our supercomputer center.
Work with the team to define and implement best practices and standards within the organization
Automate systems administration tasks utilizing open source configuration management tools
Design, build and maintain HPC-scale Linux-based services
Tune operating systems and applications to increase performance and reliability of services
Diagnose system operational problems quickly and effectively
Document system administration procedures for routine and complex tasks
Participate in an on-call rotation providing 24-hour, 7-day support and off-hours maintenance windows
Coordinate with vendors to resolve hardware and software problems
Bachelor’s Degree in computer science or closely related field and a minimum of 5 years of experience in Linux/UNIX Systems Administration. An equivalent combination of education and experience will be considered.
This position requires the ability to obtain and maintain a clearance from the Department of Energy. As such, this position is a Workplace Substance Abuse program (WSAP) testing designed position which requires passing a pre-placement drug test and participation in an ongoing random drug testing program in which employees are subject to being randomly selected for testing. The occupant of this position will also be subject to an ongoing requirement to report to ABC Company any drug-related arrest or conviction or receipt of a positive drug test result.
Excellent interpersonal/communication skills, and the ability to work as part of a team
Strong working knowledge of Unix system fundamentals and common network protocols
Experience managing Linux/UNIX operating systems in a heterogeneous environment.
Solid understanding of networked computing environment concepts
Ability to develop and maintain programs and scripts that aid in the operation and automation of administrative tasks using various shell and scripting languages (primarily bash and Python, some Go)
Ability to identify requirements and to define, plan, and implement requisite solutions
Ability to plan, organize, prioritize tasks, and complete assigned projects with minimal supervision
Experience with continuous integration and continuous deployment software methodologies and how they apply to systems engineering
An understanding of code review and familiarity with tools like GitHub and GitLab
Experience using tools such as Grafana and Nagios to monitor systems, metrics, and create dashboards
Experience designing and implement highly-available systems/services
Experience participating in an open source community with patches accepted upstream
Experience deploying and maintaining automated configuration management software such as Puppet or Ansible
Experience building custom packages for RHEL/CentOS using RPM
Experience deploying and maintaining virtualized environments using VMWare
Experience implementing systems-level security technologies like SELinux and following security best-practices
Sample job description #2
The Linux Engineer is responsible for the hardware and software components of the network and other devices within the business setting for current and future environments. This includes planning, developing, installing, configuring, maintaining, supporting, upgrading, and optimizing all network hardware, software, and communication links. This role requires the individual to proactively monitor system performance and issues and respond to incidents that require attention in a timely manner.
Essential functions and responsibilities
Participates in improvement and monitoring of deployment operations on pre-release, upgrades and current versions of software.
Participates in evaluating compatibility of programs with existing communications hardware and software features.
Proactively identifies technical opportunities and enhancements while addressing major incidents in a timely manner.
Manages and ensures the integrity of servers, enterprise class storage devices (SAN, NAS), multiple databases, and data transfer.
Manages and ensures the integrity, security, and retention of data on various storage devices.
Performs administration of UNIX systems including but not limited to, CentOS, Debian, SUSE, Red Hat Enterprise Linux, MySQL and MariaDB.
Performs Backup/Restore configuration, implementation, and administration.
1-5 years’ experience with Virtual server configuration in VMware required
Experience in the development and implementation of both local area networks and wide area networks is required
Bachelor’s degree in Computer Science or related discipline is preferred
Experience with MySQL and MariaDB administration preferred
Sample job description #3
The Linux Systems Engineer supports, with supervision, primarily in the areas of electronic trading and clearing applications in the customer facing environments. The successful candidate must have knowledge of application deployment/configuration and be comfortable with Linux/Windows platform, as well as demonstrate experience with Java to configure and troubleshoot applications. Strong communication skills are required candidate typically works with customers for support and new initiatives.
What you’ll be accountable for
Analyzes requirements with supervision and supports existing development/QA platforms. Implements necessary hardware and software for project execution. Defines the environment scope for business requirements and maintains and improves the stability, reliability and availability of environments.
Defines problems and describes the cause and effect relationship, then gathers and compares data about the problems with supervision and documents the details. Prepares analysis report and reviews with supervision.
Demonstrates intermediate knowledge of systems (Linux/Windows), distributed computing architecture (client server, intranet/internet), H/W platforms and resources – CPU, memory, virtualization, clustering. Configures systems and modifies settings to ensure proper functioning and provides routine maintenance of systems.
Participates in discussions with experienced team members to generate ideas for problem solving. Accurately defines the circumstances surrounding the decision point with supervision.
Troubleshoots most of the known issues, determines the root cause and works with seniors on solutions and implementation. Verifies implementation and makes adjustments as necessary, providing input into resolutions and documenting solutions.
What qualifications you need
Minimum 3 years of experience in Systems Engineering.
A Bachelor’s/Master’s degree in Computer Science, Information Systems, or related discipline; or equivalent combination of education and relevant proven work experience that is required for the specific job title.
Hands on Linux/Unix system experience either as a systems administrator or software developer.
Strong hands on shell scripting skills in either Bash, Bourne or Korn shell.
Experience with CI/CD pipeline tools such as Jenkins and Ansible.
Experience with cloud and container technology such as Terraform, Docker and Kubernetes
Experience with infrastructure management technology such as Chef or Puppet.
Experience with 3rd party middleware such as Kafka, IBM MQSeries, Consul and Vault.
Experience with Java, Java frameworks and technologies such as Tomcat and Spring
Strong skills in at least one scripting languages such as Ruby, Python or Perl.
Understanding of the software development life cycle and associated tools such as Bamboo, JIRA and Git.
Experience with application support, web technologies, APIs and microservices.
Have a passion for problem solving and automation and a willingness to continue growing your skills in this area.
Self-motivated and a self-starter. If you have a question, be pro-active in finding the answer and communicate your learnings with teammates
Excellent oral and written skills.
Average salary and compensation
The average salary for a Linux engineer is $110,300 in the United States. Position salary will vary based on experience, education, company size, industry, and market.
Los Angeles, California
Minneapolis-St. Paul, Minnesota
New York City, New York
Sample interview questions
What are the basic components of Linux?
What are the differences between a UNIX and Linux Operating System?
What is BASH?
What is LILO?
What is the GNU project and why is it important?
What is the maximum allowed length for a filename in Linux?
Where is the password file in Linux and how can you make it more secure?
What is INODE in Linux?
What is the Linux Kernel?
How do you check memory and CPU statistics in Linux?
How do you reduce or increase the size of an LVM partition?
How is the mask command used in a LINUX system?
What is the advantage of open source?
What is GUI?
What is a typical size for a swap partition under a Linux system?
Can you explain what a virtual desktop is?
How do you change the default run level?
What is a “/proc” file system?
How do you create a file in Linux using Terminal?
Why is Linux regarded as a more secure operating system than other operating systems?
We match top professionals with great employers across the country. Your next career move or star employee is just around the corner. Review our career content and advice, browse our latest job openings, or email us your resume. We look forward to connecting with you soon!