Full Stack Key Developer

Philadelphia, PA, USA

Ranked as #12 on Forbes’ List of 25 Fastest Growing Public Tech Companies for 2017, EPAM is committed to providing our global team of over 24,000 people with inspiring careers from day one. EPAMers lead with passion and honesty, and think creatively. Our people are the source of our success and we value collaboration, try to always understand our customers’ business, and strive for the highest standards of excellence. No matter where you are located, you’ll join a dedicated, diverse community that will help you discover your fullest potential.

DESCRIPTION


You are curious, persistent, logical and clever – a true techie at heart. You enjoy living by the code of your craft and developing elegant solutions for complex problems. If this sounds like you, this could be the perfect opportunity to join EPAM as a Full Stack Key Developer. Scroll down to learn more about the position’s responsibilities and requirements.

The role will need to be a combination of technical leader and individual contributor who has production experience delivering front-end and back-end software at scale. A Full Stack Developer will have experience with components at each layer of modern web applications. A modern Full Stack Web Developer should have experience with many of the languages, technologies, platforms, and frameworks described below. It is rare to find developers with the full following list but our internal developers speak most of these technologies every day and we are looking for like-minded developers.

Responsibilities

  • Collaborate with other senior application specialist in the organization to create an atmosphere of group contribution in addition to individual execution that makes the organization more efficient and knowledgeable;
  • Communicate with internal and external business partners to qualify technical requirements and communicate those finding back to the development team at large;
  • Know the process of software development well enough to mentor and guide others when necessary;
  • Reuse existing software development practices where possible for productivity but also introduce new trending industry practices and tools where appropriate;
  • Design robust solutions to hard problems that also take into account scale, security, reliability, and cost;
  • Contribute to new software or modify existing software to meet projects and program goals;
  • Lead small teams of other developers on focused technical projects when necessary;
  • Deliver needed project functionality for specific deliverables but deliver in such a way that the value is useful to the organization in the long term.

Requirements

  • JavaScript:
    • Experience providing solutions based on JavaScript in the front and back end;
    • Ideal candidate should be familiar with ES6, ES7, and can describe things like prototypical inheritance, de-structuring, the spread operator, this, and other advanced JavaScript concepts.
  • Node.js:
    • Experience providing back-end solutions with Node.js in self-hosted and cloud-hosted environments;
    • Be able to discuss internals of Node.js such as the event loop, asynchronous programming, streams, and node ecosystem concerns (i.e. versioning and deployment).
  • AngularJS:
    • Ideal candidate has multiple deployed applications using Angular technologies and enough time has passed now for avid Angular developers to have Angular 2.0 applications in production;
    • Extensive development in other Web based UI frameworks will work but should be willing to prove they can rapidly adopt work with Angular concepts.
  • RESTful API:
    • Experience in public RESTful interfaces and can describe the tenets of REST, compare REST to SOAP, and describe REST best practices.
  • Security:
    • Understanding of the tenets of protecting client data in motion and at rest as well as different techniques for authenticating and authorizing clients / consumers of service data.
  • Git:
    • Ideal candidate has performed primary product development with Git-based source control solutions (GitHub, GitLab, etc.);
    • Understanding of concepts such as rebasing, squashing, cherry picking, and tagging.
  • NoSQL / SQL:
    • Experience working with UNIX-based SQL, NoSQL databases (Mongo, PostgreSQL, Oracle, etc.);
    • Understanding of the core concepts of relational databases and NoSQL databases (querying, indexing, aggregation, etc.);
    • Experience in JavaScript-based libraries to access NoSQL / SQL databases (Mongoose, Node ORM, Sequelize, etc.).
  • TypeScript:
    • Experience in TypeScript or a static based language that transpiles to JavaScript;
    • Our teams use TypeScript extensively and find that candidates that don't have a lot of TypeScript benefit from significant static language experience combined with JavaScript experience.
  • Test Automation Tools:
    • Experience in Functional and Unit test based frameworks to develop automated tests (Mocha, Jasmine, Cucumber, etc.).
  • Bachelor’s degree in Computer Science or Software engineering, or at least six, typically eight or more years of solid, diverse work experience in internal or external software product development.

We offer

  • Comprehensive, flexible employee benefits package (medical/vision and dental coverage);
  • Generous merchandise discount;
  • Employer-matched 401(K) savings and profit sharing plan and much more.

KARIÉRNÍ ROZVOJ

Všem našim zaměstnancům poskytujeme zdroje, které potřebují k vybudování úspěšné kariéry.

BUDUJTE SVOU KARIÉRU S NÁMI

Staňte se součástí týmu, kde můžete rozvíjet svůj talent a budovat kariéru bez hranic.