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
Similar jobs
About the Role
As a result of our rapid growth, we are looking for a Java Backend Engineer to join our existing Cloud Engineering team and take the lead in the design and development of several key initiatives of our existing Miko3 product line as well as our new product development initiatives.
Responsibilities
- Designing, developing and maintaining core system features, services and engines
- Collaborating with a cross functional team of the backend, Mobile application, AI, signal processing, robotics Engineers, Design, Content, and Linguistic Team to realize the requirements of conversational social robotics platform which includes investigate design approaches, prototype new technology, and evaluate technical feasibility
- Ensure the developed backend infrastructure is optimized for scale and responsiveness
- Ensure best practices in design, development, security, monitoring, logging, and DevOps adhere to the execution of the project.
- Introducing new ideas, products, features by keeping track of the latest developments and industry trends
- Operating in an Agile/Scrum environment to deliver high quality software against aggressive schedules
Requirements
- Proficiency in distributed application development lifecycle (concepts of authentication/authorization, security, session management, load balancing, API gateway), programming techniques and tools (application of tested, proven development paradigms)
- Proficiency in working on Linux based Operating system.
- Working Knowledge of container orchestration platform like Kubernetes
- Proficiency in at least one server-side programming language like Java. Additional languages like Python and PHP are a plus
- Proficiency in at least one server-side framework like Servlets, Spring, java spark (Java).
- Proficient in using ORM/Data access frameworks like Hibernate,JPA with spring or other server-side frameworks.
- Proficiency in at least one data serialization framework: Apache Thrift, Google ProtoBuffs, Apache Avro,Google Json,JackSon etc.
- Proficiency in at least one of inter process communication frameworks WebSocket's, RPC, message queues, custom HTTP libraries/frameworks ( kryonet, RxJava ), etc.
- Proficiency in multithreaded programming and Concurrency concepts (Threads, Thread Pools, Futures, asynchronous programming).
- Experience defining system architectures and exploring technical feasibility tradeoffs (architecture, design patterns, reliability and scaling)
- Experience developing cloud software services and an understanding of design for scalability, performance and reliability
- Good understanding of networking and communication protocols, and proficiency in identification CPU, memory & I/O bottlenecks, solve read & write-heavy workloads.
- Proficiency is concepts of monolithic and microservice architectural paradigms.
- Proficiency in working on at least one of cloud hosting platforms like Amazon AWS, Google Cloud, Azure etc.
- Proficiency in at least one of database SQL, NO-SQL, Graph databases like MySQL, MongoDB, Orientdb
- Proficiency in at least one of testing frameworks or tools JMeter, Locusts, Taurus
- Proficiency in at least one RPC communication framework: Apache Thrift, GRPC is an added plus
- Proficiency in asynchronous libraries (RxJava), frameworks (Akka),Play,Vertx is an added plus
- Proficiency in functional programming ( Scala ) languages is an added plus
- Proficiency in working with NoSQL/graph databases is an added plus
- Proficient understanding of code versioning tools, such as Git is an added plus
- Working Knowledge of tools for server, application metrics logging and monitoring and is a plus Monit, ELK, graylog is an added plus
- Working Knowledge of DevOps containerization utilities like Ansible, Salt, Puppet is an added plus
- Working Knowledge of DevOps containerization technologies like Docker, LXD is an added plus
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
- The Architect/ Lead Backend Engineer will handle the digital experience from inception to go-live model.
- The role holder is expected to create a vision and roadmap for the digital experience to provide best in class customer experience for each of the product solutions handled. The role holder will play a critical role in leading the innovation and growth of our front end web and mobile platforms.
- Must be from Good Companies and have been working on high Scale of Traffic
- Proficiency in engineering practices and writing high quality code, with expertise in either one of Java or Groovy or Go.
- 3+ years of experience building microservices.
- Strong experience in architecting and building distributed systems, scalability, and availability
- Strong knowledge of data structures, algorithms, and designing for performance
- Strong knowledge of cloud technologies like AWS/Google Cloud/Azure
- Good understanding of RxJava or Actors framework
- Proficient with RDBMS
- Strong knowledge on data stores, database design, data modelling and SQL queries
- Extensive experience building and owning large- scale distributed backend systems
- Experience working with three or more of : Unix/Linux environments, Distributed and parallel systems, Workflow automation, CI/CD Platform development, Cloud platforms development e.g. AWS/GCP, Kubernetes/Container platforms based development
- Experience 5+ Years
- Can join immediately
- Well-versed in Core Java, OOPs concepts, collections, multi-threading, concurrency, lambdas, and streams.
- Hands-on knowledge of Spring Core, MVC, JPA, security, transaction.
- Working knowledge of REST API designing as well as development, using Spring.
- Exposure to Spring Boot, Docker, Kubernetes, OpenShift for the microservices environment.
- Savvy with SQL and database concepts.
- Ability to use frameworks like JUnit, Mockito, etc., for implementing unit testing.
- Sound understanding of code versioning tools, such as Git/bit bucket with Maven.
owners, business analysts and team members to analyse business requirements and proposed
solutions. A highly motivated and enthusiastic to join our Core Technology team and make a
difference.
Must-Have Skills:
• Candidate should have basic experience in Core Java and Advance Java design patterns
• Candidate should have basic experience in Advance Java frameworks – Spring, Hibernate,
JSP, Servlet.
• Good understanding of MAVEN & SVN is a must.
• Front end technologies knowledge is required to communicate with the web development
team. JavaScript, JQuery, AJAX, JSON.
• Collaborating with other teams. Excellent problem solving, debugging, design and debugging
skills required.
Good to Have Skills:
• Have good interpersonal and communication skills.
• E-commerce domain knowledge will be an add-on.
• Knowledge in API Design and docker.
• Knowledge of Agile methodologies
• Knowledge of Unit testing
Primary Responsibilities:
• Work closely with Tech Leads, Architects, Project Manager / Onsite Leads.
• Understand/apply reusable code design, leverage application architecture/framework
capabilities and functionality, and design/develop solutions that are highly reliable, scalable,
and perform to meet business-defined service levels.
• Contribute to the technical code and design documentation.
• Conduct code reviews and ensuring quality solutions are built and tested.
• Provide production support and issue triage for products.
Sr. Software Engineer - Open Source | ||
Department: MindLabs | ||
Location: Bangalore | ||
Job Description | ||
1. Develops software solutions by studying information needs; conferring with users; studying systems flow, data usage, and work processes; investigating problem areas; following the software development lifecycle. | ||
2. Determines operational feasibility by evaluating analysis, problem definition, requirements, solution development, and proposed solutions. | ||
3. Documents and demonstrates solutions by developing documentation, flowcharts, layouts, diagrams, charts, code comments and clear code. | ||
4. Prepares and installs solutions by determining and designing system specifications, standards, and programming. | ||
5. Provides information by collecting, analyzing, and summarizing development and service issues. | ||
6. Design, develop and implement new integration. | ||
7. Able to manage team of developers | ||
Skills: | ||
----------- | ||
1. Django full stack development experience more than 4 - 6 years (Python, Django, PostgreSQL) | ||
2. Experience of front-end development (Angular, Bootstrap, CSS, jQuery) | ||
3. Bug fixing in Django/Python/Web protocol | ||
4. Having experience in development of heavy traffic web solution | ||
5. Experience in working with LMS tools customization and integration will be added advantage | ||
Education | ||
Bachelor's degree in Computer Science or related field or equivalent degree |
Required Technical Skills:
- Java (highly capable)
- SQL (highly capable)
- Strong knowledge of software best practices, build processes, IDEs, database tools (e.g. SQL Developer, SQL Management Studio)
- Strong knowledge of source code control systems (GIT)
- Confident with Windows, Linux, Unix operating systems including command line
- Working knowledge of JIRA
Beneficial Technical Skills:
- .Net
- C
- Javascript
- Experience in test management and test execution
- Experience of Agile development methods
Additional Skills and Behaviour Required
- Experience of full software development lifecycle
- Considers competing solutions and evaluates options to create the best outcome in all aspects of the role.
- Willingness to takes ownership of whole project and engineers assigned.
- Confident to make suggestions and recommendations for improvements.
- Excellent written and verbal communication skills and ability to build good rapport
- Fluency in English, both written and oral
- Collaborates with others to achieve objectives and ensure information flow
- Seeks assistance and feedback as appropriate
Education
- Bachelor's degree (or equivalent) in Computer Science or Engineering or other relevant discipline (MCA, MSc in Computer Science etc.)
Technical Competencies
- Strong Java/J2EE development experience with demonstrated ability to develop and troubleshoot large mission applications & Software Products
- Experience on exception handling, correct use of data structures, multi-threaded programming, memory management and application tuning
- Excellent exposure in Object Oriented Design skills using Java/J2ee along with:
- Core Java Language (Collections, Concurrency/Multithreading)
- JDBC concepts (connection pooling, statement, result set)
- Web Technologies (Struts/Struts 2, Spring (IOP, MVC, AOP), Hibernate, JSP, Web services)
- Database optimization and profiling
- Core/JEE/Integration Design patterns/UML
- Should have experience in Unit Testing
- Good hands on experience with RDBMS like MySQL/Oracle with ability to write SQL Queries/Stored Procedures/Triggers/Joins/View etc
- Practical application of software product development standards and methodologies including Agile, XP, Kanban, RUP and UML
- Ability to apply design patterns consistently and also accurate when building per design requirements
- Good experience in source control, unit testing, code verification, documentation, automated build, continuous integration, metrics, and code reviews.
- Demonstrated problem solving, analytic and troubleshooting skills.
- Strong written and oral communication skills are required to effectively engage internal stakeholders and their technical representatives.