SENIOR BACK-END / FULL STACK DEVELOPER

We are looking for a candidate that is driven, enthusiastic, detail-oriented, multi-task, learns quickly, can adapt and can work in a very fast paced operations in the web and mobile environments.  The senior software engineer is responsible for building, testing, debugging / troubleshooting, and maintaining code for both web / mobile applications. Our Developers are hands-on coders as well as high-level designers and thinkers – they are responsible for developing a deep understanding of our systems, refactoring and improving those systems for maintainability and standards compliance in a high-activity environment, and for designing the integrations between those systems.

Major Accountabilities: We are looking for a candidate that have solid background in software development in open source / Java and associated systems for on-prem and cloud applications. Candidate should also be self-motivated, enthusiastic, quick learner, capable of adapting to our culture and able to work in very dynamic, complex industry. Most of our core technologies are developed in open source / Java-based – extremely strong Java skills are an absolute must.

 General 

  • Knowledge of good programming practices
  • Expected to prioritize work load and meet multiple project deadlines.
  • Expected to adapt in dynamic and collaborative work environment and make independent decision
  • Will work with project architect and /or technical lead to confirm and substantiate function and technical designs.
  • Expected to learn and deploy new technologies as needed.
  • Understanding of application layering and platform dynamics.
  • Experience with cloud technologies and how to leverage them to build an exceptional software development organization
  • Developed / deployed systems utilizing AGILE methodology
  • Experience with the following open-source project which are now de-facto standards: – Dropwizard, KeyCzar, Snappy, Groovy, SLF4J, Logback, JDBI, Mustache, PostgreSQL, Jersey, JSch, Swagger, Guava, and AngularJS / ReactJS/Native.
  • Follows and enforces the coding standards.
  • OOP, Design Patterns, TDD, and Agile development practices. Experience with SQL, Mongo DB, JDBC, and Maven.
  • Experience developing high-tolerance, and reusable components.
  • BS/MS degree in Computer Science, Engineering or a related subject

Technologies & Other Skills 

  • Java- Minimum 5 years of exp. Working on Java applications, good grasp of the language and basic Object Orientation concepts:
    • Understanding of Java Threading model required, Experience in developing Java multi-threaded applications preferred
  • Web Services (top-down/api driven-r Knowledge of session management, object relational mapping, object caching, JSON web services, and agile development methodologies
  • Experience working in public clouds (AWS, GCP) required
  • Knowledge of session management, object relational mapping, object caching, JSON web services, and agile development methodologies desired.
  • Experience in DevOps (CI / CD) – Build/Deploy/Test Automation required
  • Experience deploying code in containers and using tools such as Docker and/or Kubernetes in Production
  • Design and develop high-volume, low-latency applications for mission-critical systems, delivering high-availability and performance.
  • Contribute in all phases of the development lifecycle
  • Experience in developing web applications using popular web framework
  • Object-oriented Design
  • Solid grasp on database modeling and design
  • Strong advocate of disciplined software development: configuration management using issue tracking, estimation and Agile and Waterfall methodologies

Possess Teamwork and Communication skills (such as): 

  • Document detailed designs with class and sequence diagrams
  • Perform peer code reviews
  • Work experience with a distributed team
  • Effective communication of development efforts and concerns with architect and project lead