Full Stack Developer

M Force

The Full Stack Developer is responsible for designing, executing and maintaining R&D customer projects. This position will work with a team to design, develop, deploy, and maintain solutions for researchers. The developer will need to have experience providing time, scope and cost estimates for projects. As a Full Stack Developer, you should be comfortable around both front-end and back-end coding languages, development frameworks and third-party libraries. You should also be a team player with a knack for visual design and utility. This position will work closely with other engineers and developers to test and deploy solutions.


Major Duties/Responsibilities

Primary duties include:

  • Support deployment, monitoring, and management for research projects.
  • Ensure the availability, performance, scalability and security of production systems.
  • Manage the end-to-end life cycle for the production of software and applications.
  • Troubleshooting and problem solving across multiple platforms (dev/test/prod).
  • Continuous process improvements.
  • Embrace continuous integration and continuous delivery (CI/CD) processes.
  • Work closely with customers to design solutions based on industry best practices and security requirements.
  • Collaborate with research teams to ensure new environments meet requirements.
  • Identify and document IT best practices that will improve the systems deployment function.
  • Ability to present and communicate complex technical concepts to small to medium groups of scientists and engineers.
  • Work with research teams to design workflows for hybrid and cloud-based workloads
  • Migrate workloads from internal servers and VMs to Cloud Resources.
  • Ensure the secure and effective operation of computing systems through compliance with ORNL procedures and IT Internal Operating Procedures.
  • Troubleshoot system problems quickly and effectively.
  • Work with other systems engineers and vendors to resolve hardware and software issues.
  • Optimize systems performance.
  • Install and configure software, both commercial packages and various open source packages.
  • Maintain documentation/notes on software builds and installs.
  • Keeping current with industry trends and developments that can be applied to company needs.
  • Off hours support may be required.

Basic Requirements

  • Bachelor's degree in Computer Science or related technical subjects or equivalent combination of education and experience.
  • A minimum of 1 years of experience working with container infrastructure using docker.
  • A minimum 5 years developing web applications in multiple languages (such as Java, JavaScript, HTML, PHP, C#).
  • A minimum of 2 years utilizing configuration management and automation tools such as Git, Jenkins, Ansible, Puppet or other CI/CD pipeline tools.
  • A minimum 3 years experience developing within LAMP stack.
  • Knowledge of multiple back-end languages (e.g. C#, Java, Python) and JavaScript frameworks (e.g. Angular, React, Node.js).
  • Familiarity with databases (e.g. MySQL, MongoDB, MariaDB), web servers (e.g. Apache) and UI/UX design.
  • Willingness to take on previously developed websites/applications and update/maintain them for the customer.

Preferred Qualifications

  • Bachelor's degree in Computer Science or related technical subjects or equivalent combination of education and experience with 5 years of experience developing within the LAMP stack.   
  • A minimum of 3 years of experience managing container infrastructure using docker.
  • Experience with configuring and managing docker swarms/Kubernetes clusters.
  • Knowledge of networking fundamentals including TCP/IP, traffic analysis, common protocols and network diagnostics.
  • Experience with performance and diagnostic tools for benchmarking, analysis and tuning of applications.
  • Knowledge of multiple front-end languages and libraries (e.g. HTML/ CSS, JavaScript, XML, jQuery).
  • Previous experience working in a government, scientific, or other highly technical environment.
  • Excellent interpersonal skills suitable for user support and ability to work well with peer system administrators.
  • Excellent written and verbal communication skills.
  • Ability to work independently and demonstrated analytical and problem solving skills.
  • Demonstrated ability to balance complex research and security requirements.
  • Background of contributing to open source projects or avocational endeavors such as hacker/maker spaces is desirable.
  • Technical documentation skills, including ability to prepare simple documentation web pages.

M Force Staffing is an equal opportunity employer. All qualified applicants, including individuals with disabilities and protected veterans, are encouraged to apply. In addition to federal law requirements, M Force Staffing complies with applicable state and local laws governing nondiscrimination in employment in every location in which the company has facilities. This policy applies to all terms and conditions of employment, including recruiting, hiring, placement, promotion, termination, layoff, recall, transfer, leaves of absence, compensation and training. M Force Staffing is an E-Verify Employer