Providing technical expertise for every phase of the project lifecycle—from concept
development to solution design, implementation, optimization and support. Interacts
with a set of clients (client senior developers and architects) to create technology
specifications from business requirements for one of the modules within the project.
Prepares the technical design of the more complex technology components within the
module (one or more of client/web presentation tier, server tier, data access and data
model, integration component, package function customization).
Assists the architect in articulating the pros and cons of using a certain technology stack
or component or design pattern versus another to the clients and project team and
drives selection of technologies, designs to come up with the optimal architecture.
Drives the performance tuning, re-design and re-factoring for a module.
Contributes to designing and implementing the build, releases process as well as system
configuration and deployment characteristics of the application.
Required Tech Stack
2+ years of strong development skills in Java with JDK 1. 8 & above version &
Microservices with Spring boot/ Spring.
Should have strong acumen in Data Structures, Algorithms, problem-solving and Logical/
Analytical skills.
Thorough understanding of OOPS concepts, Design principles and implementation of
different type of Design patterns.
Sound understanding of concepts like Exceptional handling, Serialization/Deserialization
and Immutability concepts, etc.
Good fundamental knowledge in Enums, Collections, Annotations, Generics, Auto
boxing, etc. Experience with Multithreading, Concurrent Package and Concurrent APIs Basic
understanding of Java Memory Management (JMM) including garbage collections
concepts.
Experience in RDBMS or NO SQL databases and writing SQL queries (Joins, group by,
aggregate functions, etc.)
Experience with at-least one NoSQL (Any of Cassandra/Couch base/Hadoop), Hands-on
experience with JMS
Hands-on experience in creating RESTful webservices and consuming webservices
Hands-on experience with Spring.
Hands-on experience with any of the logging frameworks (SLF4J/LogBack/Log4j)
Experience of writing Junit test cases using Mockito / Powermock frameworks.
Should have practical experience with Maven/Gradle and knowledge of version control
systems like Git/SVN etc.
Good communication skills and ability to work with global teams to define and deliver
on projects.
Sound understanding/experience in software development process, test-driven
development
Similar jobs
UKG is looking to hire a Lead Software Engineer to join our extremely talented Data Science team. As a Lead Software Engineer at UKG, you’ll be embedded on the Data Science team where you can work on the next generation AI Platform. You’ll get to work directly with other Engineers, Software Testers, Business Analysts, Product Managers, and Directors, all of whom make up the team. In this highly collaborative environment, you will have the opportunity to grow as a software engineer, and even help mentor others.
This position requires excellent object-oriented programming skills and knowledge of design patterns. They will be involved in the deployment of our AI Platform/Services solution on the cloud. The job requires you to be able to design, develop, troubleshoot, and debug complex software applications at the enterprise level. We are looking for a software engineer who is passionate about programming and truly enjoys what they do. The ideal candidate for the Python Engineer position is someone who has a can-do attitude and is an innovative thinker.
UKG works in an agile environment where there are daily stand-ups, code reviews, and constant communication within each self-managed cross-functional team. The ability to communicate effectively with Business Analysts and Software Testers, as well as work closely with other team members are key components for success in this position.
Primary Responsibilities:
- Collaborate with members of the team to solve challenging engineering tasks on time and with high quality.
- Engage in code reviews and training of team members.
- Support continuous deployment pipeline code.
- Situationally troubleshoot production issues alongside the support team.
- Continually research and recommend product improvements.
- Create and integrate features for our enterprise software solution using the latest Python technologies.
- Write web services, business objects, and other middle-tier framework using Python
- Actively communicate with team members to clarify requirements and overcome obstacles to meet the team goals.
- Leverage open-source and other technologies and languages outside of the Python platform.
- Develop cutting-edge solutions to maximize the performance, scalability, and distributed processing capabilities of the system.
- Provide troubleshooting and root cause analysis for production issues that are escalated to the engineering team.
- Work with development teams in an agile context as it relates to software development, including Kanban, automated unit testing, test fixtures, and pair programming.
Qualifications
- 5-8 years experience as a Python developer on enterprise projects using Python, Flask, FastAPI, Django, PyTest, Celery and other Python frameworks.
- Software development experience including: object-oriented programming, concurrency programming, modern design patterns, RESTful service implementation, micro-service architecture, test-driven development, and acceptance testing.
- Familiarity with tools used to automate the deployment of an enterprise software solution to the cloud, Terraform, GitHub Actions, Concourse, Ansible, etc.
- Proficiency with Git as a version control system
- Experience with Docker and Kubernetes
- Experience with relational SQL and NoSQL databases, including MongoDB and MSSQL.
- Experience with object-oriented languages: Python, Java, Scala, C#, etc.
- Experience with testing tools such as PyTest, Wiremock, xUnit, mocking frameworks, etc.
- Experience with GCP technologies such as BigQuery, GKE, GCS, DataFlow, Kubeflow, and/or VertexAI
- Excellent problem solving and communication skills.
Required Skills:
- 3+ year of experience in Development in JAVA technology.
- Strong Java Basics
- SpringBoot or Spring MVC
- Hands on experience on Relational Databases (SQL query or Hibernate) + Mongo (JSON parsing)
- Proficient in REST API development
- Messaging Queue (RabitMQ or Kafka)
- Microservices
- Any Caching Mechanism
- Good at problem solving
Good to Have Skills:
- 4+ years of experience in using Java/J2EE tech stacks
- Good understanding of data structures and algorithms.
- Excellent analytical and problem solving skills.
- Ability to work in a fast paced internet start-up environment.
- Experience in technical mentorship/coaching is highly desirable.
- Understanding of AI/ML algorithms is a plus.
WHAT YOU’LL DO:
- Developing system components throughout all phases of the product lifecycle·
- Own, improve, maintain, and enhance the code of a desktop client application with a native look and feel for Windows, one of the primary access points for users to Egnyte’s cloud-based connect solution
- Influence architecture, features, and implementation of our product·
- Collaborate with other developers, product owners, and QA in bringing releases in a SaaS delivery model
YOUR QUALIFICATIONS:
- Leading a team of developers and QA (team size: 4+) with a full focus on productivity and business delivery
- Taking full responsibility for the new code from the design phase to running it in production (high-scale usage)
- Strong C++ programming (C++14 standard) and debugging skills and design patterns knowledge
- Experience with STL, boost, or WIN32 API·
- Experience in the development of multi-threaded and multi-process applications·
- Practice in unit tests development and continuous integration and hands-on experience with REST APIs and Git
- You will be participating in feature solutioning discussions and finalizing an approach aligned with requirements.
- Preparing HLD and LLD. Making reviews of design documents
- Exploring technology and hacking way through the specific problem to accomplish desired results.
- Owning a module and delivering it end to end.
- Working in a team and at times showing leadership by taking initiatives and guiding other
- You should have evaluated new technologies and introduced relevant as and when required.
- You should have built multiple systems ground up and maintained them working.
- You should have exposed to debugging client-side production setup under crisis.
● J2EE with a good understanding of Servlets and JSP
● Experience in Spring Modules – Spring IOC and AOP, Spring Boot (version 2 plus), JDBC
● Expertise in design and development of various web and enterprise – level applications using Java/J2EE
technologies such as Spring, Hibernate, Rest services.
● Web Services (including SOAP, XML, XML Schema, JSON, and REST)
● Tools required: Maven,Eclipse, Github, and Swagger
● Good knowledge of SQL and Redis (NOSql)
● Ability to document requirements and specifications
● Proven work experience as a Software Engineer or Software Developer
● Ability to develop software in Java or any other OOPS languages
● Excellent knowledge of relational databases, SQL and ORM technologies (JPA2, Hibernate)
● Experience in developing Web Applications using at least one popular Web Framework (Spring)
● Experience with test-driven development
● Proficiency in software engineering tools
Job Requirements :
- 4+ years of Java development experience
- 4+ years of microservice development experience with Spring boot framework
- Core & Advanced Java (Threading, Design Patterns, Data Structures) J2EE, REST web services
- Excellent knowledge of Enterprise Design Patterns
- Full stack development with Angular 8 experience will be a plus
- Experience with test driven software development
- Exposure to telecom domain
- ETOM/ SID which make the TM Forum framework
- Back-end development using Python/Django
- Front-end development using CSS, HTML and JS
- Write reusable, testable, and efficient code
- Implement security and data protection
- Use Amazon Relational Database Service
- Commit, push, pull and sync to Bitbucket, GitLab
- Deployment of code on MS Azure and AWS
- Build efficient scripts and cron jobs in GCP
- Connect apps and automate workflows using Integromat
- 3+ years of Professional Full time experience building and maintaining complex software on a cross-functional team. You'll join us in writing clean, maintainable software that solves hard problems. You'll write testable, quality code. You'll push the team and the mission forward with your contributions.
- Python and Django
- Strong database skills
- Basic systems administration
- Bachelors or Masters in Computer Science Engineering (or equivalent)
- Minimum product dev experience of 3+ years in web/mobile startups with expertise in designing and implementing high performance web applications.
- You're an incessant problem solver and tougher the problem gets, more fun you have.
- You love to own end to end responsibility, starting from defining the problem statement (either yourself or alongside your peers), development (PoC if needed), testing, releasing in staging & then production env and finally monitoring.
- Sound working knowledge of HTML, CSS and JS is an add-on
- Technical know-how of MS Azure, AWS and GCP are desirable
- Understand and keep the technical documentation up-to-date on Confluence
- Collaborate work using bug tracking and project management tools like Jira, Redmine
Experince is 2 to 5 yrs and 5 + yrs (In-depth knowledge and hands on experience on Spring Boot & Java is mandatory