Java Developer

Similar jobs (10)
Position Overview:
We are seeking a skilled Java Developer to join our dynamic team. The ideal candidate will have a strong foundation in Core Java and extensive experience in developing and deploying applications using Spring Boot, Apache Tomcat, and other related technologies. The candidate should possess expertise in building Restful Web Services, Microservices architecture, and be proficient in implementing multi-threading concepts.
Additionally, experience with Maven, Git, Jenkins, and Agile Scrum methodologies is essential for this role. The candidate should also have a solid understanding of software development lifecycle (SDLC) processes. Familiarity with various databases such as MySQL, PostgreSQL, Oracle, or MongoDB, along with third-party API integration and payment gateway integration, is required.
Key Responsibilities:
• Develop, test, deploy, and maintain Java-based applications.
• Design and implement Restful Web Services and Microservices using Spring Boot.
• Utilize multi-threading concepts to enhance application performance.
• Integrate third-party APIs and payment gateways into applications.
• Collaborate with cross-functional teams to gather requirements and deliver high-quality solutions.
• Participate in Agile Scrum ceremonies and contribute to sprint planning, backlog grooming, and retrospectives.
• Ensure adherence to best practices and coding standards.
• Conduct code reviews and provide constructive feedback to peers.
• Troubleshoot and debug complex issues in production environments.
• Document design decisions, processes, and procedures.
Required Qualifications:
• Bachelor’s degree in computer science, Engineering, or related field.
• Minimum 3 years of experience as a Java Developer with expertise in Core Java.
• Strong knowledge of Spring Boot, Apache Tomcat, and multi-threading concepts.
• Hands-on experience in building Restful Web Services and Microservices architecture.
• Proficiency in using Maven, Git, and Jenkins for build and deployment processes.
• Familiarity with Agile Scrum methodologies and SDLC processes.
• Experience working with databases such as MySQL, PostgreSQL, Oracle, or MongoDB.
• Demonstrated ability to integrate third-party APIs and payment gateways.
• Excellent problem-solving and analytical skills.
• Effective communication and collaboration skills.
• Familiarity with NoSQL databases like MongoDB.
• Knowledge of Azure DevOps for CI/CD pipelines
A B.Tech/M.Tech in Computer Sc, a SDE should have 1-3 years of experience in SW solution development. We are specifically looking for a SDE who:
- is highly proficient in Java Coreand Spring boot applications including making high quality, highly performing code under JVM environment.
- has good working knowledge in design of n-Tier databases (Postgres, NoSQL DBs e.g. Cassandra/MongoDB)
- has worked in agile development environment under open source gitlab including testing, change management
- is highly proficient in OOD, extensibility, usability, understand data pre-processing
- has exposure to full life cycle of product implementation and deployment of enterprise products driving a subsystem including development under gitlab or github.
- [Desirable] Ability to optimize an ML solution for accuracy and scale
- [Desirable] has experience in working with Advanced Java
Key Responsibilities:
- Rewrite existing APIs in NodeJS.
- Remodel the APIs into Micro services-based architecture.
- Implement a caching layer wherever possible.
- Optimize the API for high performance and scalability.
- Write unit tests for API Testing.
- Automate the code testing and deployment process.
Skills Required:
- At least 3 years of experience developing Backends using NodeJS — should be well versed with its asynchronous nature & event loop, and know its quirks and workarounds.
- Excellent hands-on experience using MySQL or any other SQL Database.
- Good knowledge of MongoDB or any other NoSQL Database.
- Good knowledge of Redis, its data types, and their use cases.
- Experience with graph-based databases like GraphQL and Neo4j.
- Experience developing and deploying REST APIs.
- Good knowledge of Unit Testing and available Test Frameworks.
- Good understanding of advanced JS libraries and frameworks.
- Experience with Web sockets, Service Workers, and Web Push Notifications.
- Familiar with NodeJS profiling tools.
- Proficient understanding of code versioning tools such as Git.
- Good knowledge of creating and maintaining DevOps infrastructure on cloud platforms.
- Should be a fast learner and a go-getter — without any fear of trying out new things Preferences.
- Experience building a large scale social or location-based app.
- Providing technical guidance as well hands on management for all product development within the company.
- Identifying frameworks/ technologies/ languages/ libraries to be used to achieve desired goals.
- Underscores pros and cons of various technologies available and presenting arguments to management and technical team.
- Taking responsibility for refactoring existing code.
- Leading, managing and mentoring a team of 5+ engineers.
- Serving as a key member of the management team that sets the company's strategic direction.
- Defining standards & best practices to support agile development processes.
- Planning, tracking and estimating product development activities.
- Ensuring the optimal application of technology and engineering resources to meet product development and/ or customer requirements as per the product and/ or marketing requirements document.
- Ensuring that the product quality is world class at all times.
- Growing the internal information technology development organisation; managing and recruiting a multidisciplinary high-performance technology team.
- Developing RESTful backend services if needed
- Ensuring implementation of formal processes to support the product development process.
- Passionate about automated testing: Managing / driving testing - unit tests, system tests, regression.
- Performance Tuning/ Profiling: In-depth understanding of popular architectures SOA, RESTful, Microservices, Messaging Bus.
What you need to have:
- B.E / B.Tech or similar qualification from a premier institute.
- Good communication skills.
- Self-starter, Highly motivated.
- People Management skills.
- Go-getter attitude.
- 3 - 7 years of hands-on development experience in backend development with a track record of solid technical accomplishments. Node.js experience will be preferred.
- Knowledge of multiple programming languages will be preferred.
- Knowledge of Caching solutions Redis, Memcache
- Databases experience - MySQL/NoSQL, RabbitMQ, Kafka.
- Capability to present different architecture for the same problem.
- Knowledge of popular front end MVC technologies.
- Understanding of production level problems and their possible solutions
Skills:
Strong knowledge of MYSQL/PostGreSQL; Knowledge of MongoDB, Redis, Couch DB is preferred.
Expertise in application development, databases, version control, and deployment. Skill - Node.js,
Experience of AWS or GCP - especially services such as Lambda or google app engine
Solid grasp of Service-oriented architecture. Web Services implementation on a medium to large scale
Solid understanding of scaling mobile app services. Having worked the backend of an Android app is preferred
Culture:
Ability to work independently with minimal supervision
Happy to deal with, and contribute to, an environment of daily builds Has worked in small teams, is versatile. Work within short timelines and be receptive to business needs. Can work closely with Digital, Product, Operations teams.
Desirable Social Attributes:
Has contributed to one or more Open Source projects through own initiative. Has provided a high quality answer to a question posted on StackOverflow.
Role:
As a Software Developer who would work independently, the candidate is expected actively acquire problems and deliver solutions as well as guide the team technically. Such a problem solver would obviously be a self starter with a high level of curiosity rather than a programming language specialist.
He/she would be required to produce software of the highest quality through self-discipline, clear and engaged communication, and attention to detail. The role would include custom web application development on (most typically on Node.js and PHP/Python), databases (most typically MySql and MongoDb), version control (github), testing (necessarily through test scripts written before code is written), daily builds and eventual deployment onto AWS or GCP.
Attributes of the ideal candidate:
Highly productive software developer with the proven aptitude to understand and apply technology
Determination to succeed despite obstacles and challenges, and a positive attitude favoring achievement of goals over open-ended investigation
Always learning, evolving, and sharing what you know
Inspired by complex, varied problems and rapid change
Open-minded, flexible, and curious about new and better ideas
document, build, and deploy RESTful JSON APIs with continuous uptime and minimal latency.
Roles and Responsibilities:
-Building API services using NodeJS Express and related frameworks
Expert level understanding of NodeJS asynchronous runtime
Expert level understanding of Javascript concepts on callbacks and closures
Experience with Postgres, NoSQL, Redis, and Firebase Realtime database
Experience with AWS services like Elastic Beanstalk, Cloudfront, S3, EC2, Lambda,
API Gateway, SQS, etc
Understanding of patterns and techniques for building scalable back-end
infrastructure including caching, rate limiting, authentication, and authorization
schemes.
Experience in building highly scalable and high throughput services with
millisecond response times
Experience working in a collaborative team environment
Excellent communication & interpersonal skills
Willingness to learn and pick up new technology along with patience to mentor.
NOTE- Candidates only from PRODUCT BASED companies will be preferred. Location is Mumbai and its Work from Office.
Who are we
Syook is an established Series A funded high growth startup headquartered in Bengaluru, working in the B2B space. We are currently on the path of high growth and productivity, and great culture building (because we know the two go hand in hand)! We are looking for folks who will ask questions like why/why not, what can I do to make this better, how can I help the company and most importantly, what can the company do to help you.
Our flagship product Syook InSite allows businesses to visualize their operations, providing information that can easily translate into measurable impact on the bottom-line. InSite is an Industrial Internet-of-Things (IIoT) solution that uses Bluetooth Low Energy (BLE) beacons to generate highly-accurate location data of all your resources (both assets and people), at much lower costs than https://syook.com/rfid-vs-ble-vs-uwb-vs-wi-fi/">comparable technologies. The result: Quick RoI and Improved Operational Performance. It’s Industry 4.0, ready for deployment!
Role overview
First and foremost, we're looking for people who are excited about what we're doing -- you don't need to know anything about IoT, but should be excited to learn. We're building in an entirely new space, so you'll be able to use creativity to help us solve problems and delight our customers.
Our product stack is MERN (React, Node + Express, MongoDB) with a few services also written in Java and Go and we use React Native on mobile.
We’re looking for someone who loves to solve problems and enjoys building algorithms that identify all possible scenarios. You must enjoy breaking down a problem statement into smaller chunks and have a knack of designing scalable systems using modular pieces.
A day in your role will involve any of the following (or a combination):
- Develop APIs for new features that will be consumed by the frontend (web and mobile)
- Develop APIs for integrations into 3rd party ERP & HRMS systems like SAP, etc
- Build new services or add functionality in existing systems & services like IoT Data Parsers and Ingestors, etc
- Build modular sub-systems that can be reused to develop a scalable system
- Optimize application backend for speed and scalability
- Ship out bug free code using TDD
- Work towards more stability & scalability of the backend
- Understand the requirements and give adequate time estimates for the features
- Coordinate with QA for every feature and make sure releases are bug free
This list is not exhaustive at all, and you'll have a lot of autonomy over your work.
This is a full time position based out of Bengaluru with the option of working remotely few days of the week. During the interview, you'll be able to share what you're most interested in.
Why you might be excited about us
- We're working to solve a massive global problem and help organizations be more competitive. We love solving problems using technology and are bridging a massive gap in the operations excellence domain.
- We're small, so you'll be able to contribute efficiently and without bureaucracy. You'll quickly have responsibility over big areas of our product.
- Our team has a wide range of experiences (Oilfield, Telecom, Psychology PhD, etc.) and are excited to learn from you, too.
- You'll be able to work independently and set your own schedule. We don't micromanage and will help you do great work. We trust our people and believe that each person here puts their best foot forward.
- We'll mould your role to shape a career you're excited about. We care a ton about your satisfaction and job happiness, and will help prep you for whatever you're looking for in the future.
- We work hard and also highly value balanced work/life. We care about family and your own personal development, and don't expect for you to be always engaged with work.
Why you might not be excited about us
- We're small (35+ people in the company now), so if you like more established companies, it's not (yet) the right time. You'll help build our company's culture.
- Since we're an early stage startup, projects and priorities may shift.
- Our customers love us, and there's a lot we can improve. It's a great place to be, but it means there's some jank. (Nothing too scary! 😃)
- We can't (yet) provide constant close mentorship for junior developers. As we grow, we'll get a lot better at this.
- Since you'll have a lot of responsibility and creativity over projects, they may not be defined perfectly initially. You'll be expected to bring your own experience and perspective to help us do the right things, and raise flags if you think we should do things differently.
About you
None of these are requirements, but do describe the kinds of people that we think would be most effective at Syook right now.
- Love thinking broadly about problems and thinking creatively about how to solve them efficiently.
- Happy to try things out to validate new features, and move on if they no longer solve a problem.
- Excited for a front-row seat into a fast growing, early stage company. Things will change a lot!
- Enjoy thinking through trade-offs, with both mindfulness of short-term needs and our long-term direction.
- Happy writing documentation so that others can ramp up super easily and you're never a single-source-of-failure. We're a bit too small to have silos.
- You are driven and care about doing a good job and improving your craft.
- You have a growth mindset, can keep up with the latest technology changes and trends and suggest enhancements based on these
- Most importantly, you’re the kind of person who is friendly, approachable, ready to help others and personally driven to put your best foot forward.
Technically these are some of the things we would like for you to have to be able to contribute effectively in this kind of a position:
- You are fluent working with server-side languages and frameworks, in particular NodeJS, but any other language proficiency is also fine e.g. Go, Python, Java, as long as you can pick up a new language and contribute
- You are fluent in using SQL Database, preferably Postgres and at least one NOSQL Database, preferably MongoDB, but feel free to surprise us!
- You can write non-trivial programs in Javascript
- You can write clean, modular code in either Object-Oriented style or Functional style
- You are comfortable with Test Driven Development
- You are fluent in using the tools of the trade: Testing, Editors, Git, Command line, Slack
Apart from the above it would be a plus if you also have
- Knowledge of Docker
- Knowledge of Kafka, RabbitMQ or other pub / sub and queue management systems
- Open source contributions
Our current development practices
Since we're an early-stage startup, we constantly have to ask "what gets the most value, cheaply, to validate our assumptions?" We build some things to last a long time, and others as prototypes.
We use linting, e2e testing, CI CD, observability logging, and production probers. We've documented both our web and mobile apps so that you should be able to get started easily—and if you need help, we'll absolutely improve our docs—and contribute your first day.
We recognize the value of maintainability and keeping our developer experience nimble. Our sprints are for 2 weeks and we push releases to production as per this schedule.
You'll help push us to be our best, and we're excited for recommendations and insights you have as you join. You'll be an owner and contribute towards how we work.
Joining our team
Interview process
We want you at your best, and won't be giving you gotcha-style algorithms questions. We want to get to know you, hear about what you're interested in, and learn about what you hope to do in the future.
1. Meet us and learn about Syook
You'll first talk to Sarlaksha or someone from the People Services team (over phone or video) and won't need to prepare anything in advance. The goal of this conversation is to get to know you and mutually explore if we might be a good fit for each other. You'll learn more about Syook and have a chance to ask any questions about our company, team culture, and product.
We'll also talk in depth about your technical experience. We'll talk about frameworks you've used, how you make technical decisions, types of problems you like to solve, etc. You won't need to prepare anything in advance.
This is primarily used to get a better feel for your experience, how you work, and where you may fit in. It'll be used to design the rest of the interview process.
Through this and the next steps, you'll meet more people in the company so we can get to know each other.
2. Technical challenges
Everyone has different strengths, and we want you to do your best. Our goal is for you to clearly demonstrate your technical aptitude. We're open to accommodating what would work best for you.
We can choose mutually between several different options:
- A live pair coding session where we'll work through some problems.
- Working through similar problems independently as a take home challenge.
- Presenting any previous work you've done (example: open source, side project, or even another interview you did).
3. Technical Discussions
If you clear the technical challenge then we will have a few rounds of technical discussions where we interact with you to understand in depth about your craft. These discussions will be with one of the engineers at Syook whom you will end up working with and the final discussion will be with our CTO (Aman Agarwal). We will try and see how you can augment our engineering culture and we’ll discuss the bigger picture also. You will also get to understand what your role is all about and how you can grow with us. Feel free to ask for feedback and any other questions you may have about the company and we will be happy to share the same.
5. People & Culture fit round
If you reach this stage, it automatically means that we’re convinced of your technical skills. However, that’s never enough for us. We want to ensure that you will feel comfortable working with us and that we can give you an environment where you can be your productive best. We will use this discussion to understand what you bring to the table apart from your technical skills in terms of initiatives, personality, and a certain entrepreneurial mindset.
6. Reference conversations
We will talk to a few people you've worked with before to learn more about how we can best work with you. We expect to hear great things, so this is primarily so we can work with you as effectively as possible.
* You are a Coder, a Doer. YOU BELIEVE in actions ( *In short - You are less about Gyan and more about Samadhan* )
* YOU BELIEVE in software delivery with quality
* If you are passionate about technology, engineering best practices and using them to solve real and complex business problems.
* Badly written code or bad architecture irritates you the most.
* YOU BELIEVE in "Proof of the pudding is in the eating" so you are always tinkering and exploring new technologies
* YOU BELIEVE in building things the right way, invest in developer productivity and follow proven engineering practices to ensure that you spend the maximum amount of time working on problems that matter.
* Since work is a big part of your life, YOU BELIEVE in sharing knowledge and of course have fun in the process (company outings, team sports, lunches, etc)
You'll be expected to
1. Design highly scalable, testable code and follow Test Driven Development methodology - Able to write well organised, modularised code with test cases.
* Apart from writing code *
1. Take ownership of new products/features.
2. Contribute to the design and architecture of our backend APIs and deployment of microservices
3. Ensure adherence to engineering best practices and maintain the overall quality of our codebase.
4. Mentor and assist younger members of the team and perform code reviews.
5. Work with the product team to translate powerful ideas into everyday business value.
Qualifications
* Will prefer a Bachelor's degree or equivalent experience in Computer Science or related field
* Development experience with Java is a must; If you know Python and Go Programming Language that's great
* Experience in SQL and NoSQL databases with an insight into various data modelling use cases
* Sound with data structures and algorithms and have a good understanding of design patterns, software architectures
* Unquenching thirst to learn new technologies.
* Experience with CI/CD is a plus
What FreightFox gives you
- A high energy environment where you’ll be working alongside people who want to bring innovative tech solutions in the Indian landscape. Make in India for India.
- A chance to become a part of the early team of a budding start-up and help shape its growth path.
- Competitive Package
- Stocks - Be part of the early-stage startup and they benefit financially from the company’s growth
About FreightFox
We are a young and ambitious technology start-up in the Indian B2B Logistics space. Our aim is to change the future of freight in India by leveraging tech and data to deliver new and exciting possibilities in this space.
We’ve cautiously cultivated an environment where customers come first, where we validate our hypothesis first before writing even a single line of code, where our customers and prospects are our best advisors and where we truly believe that insights from data are critical to steering a business in the right direction.
We have raised $300K seed fund from Angel Investors in Dec 2020
Key Responsibilities:
· You’ll be actively involved with development of server backend that support mobile apps.
· You’ll be architecting and implementing best-in-class complex ‘real time’ web software and/or messaging systems to power highly scalable apps for users.
· Translate high level business problems into scalable design and code. Create libraries & Utilities for larger consumption.
· Work closely with UI/UX designers to create exciting user experiences and ensure delivery of graphic assets as per modern web standards.
· You’ll be continuously keeping an eye on the latest cutting-edge technologies and leveraging these in one’s own and the team’s work as necessary.
· Care about the business results of what you build, not just the elegance of the technology you build.
· Work on the end to end stack (Platforms, UI, distributed systems, databases) rather than specialize in one area.
· And of course, get hands dirty by writing server-side code for mobile-based applications, create robust high-volume production applications, and develop prototypes quickly.
Eligibility
Desired Candidates Profile:
• 5+ years of experience on Node.js based web applications and systems development.
• Strong knowledge of MEAN, Linux/UNIX based development & client-side JavaScript/jQuery.
• Knowledgeable on ORMs, their utility and limitations.
• Knowledge of web services and serialization techniques like REST, SOAP, XML & JSON.
• Knowledgeable about caching mechanisms & tools like memcache, CDNs, nginx.
• Scripting experience in using Shell/Python for creating quick technology solutions to problems.
• Prior expertise of working with AWS Cloud, CDNs and other PAAS based services.
• A strong penchant for Object-Oriented Design.
• Experience of working with version control, bug tracking, continuous integration and other productivity enhancement software like SVN, Bugzilla, Jira etc.
• Prior experience in implementing Agile software methodologies.
• Passionate about software development & modern-day web technologies like:
• Server-Side JavaScript – Node.js, Backbone.js
• Web Sockets
• NoSQL based databases like MongoDB/Couchbase/Redis
• Big Data
• Taking responsibility and ownership in the team’s work.
Additional Requirements:
• B-Tech/BS/BE/BS/MS/M.Tech/MS in Electronics or Computer Science from a premier institute in India (IITs, BITS, NITs etc) or abroad.
Node.js and frameworks available for it - Express, StrongLoop, etc
Understanding the nature of asynchronous programming and its quirks and workarounds
Integration of user-facing elements developed by front-end developers
front-end technologies - HTML5, and CSS3
Writing scalable, reusable, testable, and efficient code










