Software Development Engineer – Product Company, BNG
at a Product Development Company having global footprint
Job Location: Bangalore
Experience : 3 – 8 Yrs
Qualification : IITs/NITs/IIITs/BITS, pliani, Tier1/II Engineering Colleges
Skills Required :
• Mandatory – Educational Background should be from Tier1/II institutes only.
• A bachelor’s degree in Computer Science or equivalent combination of Technical education and work experience.
• Strong Object Oriented Design and skills (C/C++ and/or Java/C# on Unix/Linux/Windows platform).
• Solid software development background including design patterns, data structures & algorithms.
• Solid experience with distributed (multi-tiered) management systems, algorithms and relational databases.
• Proficiency using modern web development technologies and techniques including JavaScript, Ajax, Responsive Design Etc.
• Strong customer focus, ownership, urgency and drive.
• Having experience in Hospitality/Travel/Internet/Online/Start-up/IT/Logistic/Courier/Cargo/ Transportation would be preferable.

Similar jobs
Job Description:
• Experience in Python (Only Backend), Data structures, Oops, Algorithms, Django, NumPy etc.
• Notice/Joining of not more than 30 days.
• Only Premium Institute- Tier 1 and Tier 2.
• Hybrid Mode of working.
• Good understanding of writing Unit Tests using PYTest.
• Good understanding of parsing XML’s and handling files using Python.
• Good understanding with Databases/SQL, procedures and query tuning.
• Service Design Concepts, OO and Functional Development concepts.
• Agile Development Methodologies.
• Strong oral and written communication skills.
• Excellent interpersonal skills and professional approach Skills desired.
Here’s a detailed job description you could use for a C++ Developer specializing in Computational Geometry:
🧑💻 Job Description: C++ Developer (Computational Geometry)
📌 Position Overview
We are seeking a highly skilled C++ Developer with expertise in computational geometry to design, implement, and optimize algorithms for geometric modeling, spatial analysis, and high-performance applications. The ideal candidate will have strong problem-solving skills, a deep understanding of geometric data structures, and experience building efficient, scalable software solutions.
🎯 Key Responsibilities
- Develop and maintain C++ applications focused on computational geometry, geometric modeling, and spatial algorithms.
- Implement and optimize algorithms for tasks such as:
- Polygon triangulation
- Convex hulls
- Voronoi diagrams
- Delaunay triangulation
- Collision detection
- Pathfinding and geometric queries
- Work with large-scale geometric datasets and ensure robustness, accuracy, and performance.
- Collaborate with cross-functional teams (e.g., graphics, CAD, robotics, GIS, simulation).
- Write clean, maintainable, and well-documented code following industry best practices.
- Conduct performance profiling and optimize algorithms for real-time applications.
- Stay updated with the latest research and techniques in computational geometry and related fields.
🛠️ Required Skills & Qualifications
- Strong proficiency in modern C++ (C++11/14/17/20).
- Solid understanding of computational geometry concepts and algorithms.
- Experience with data structures (trees, graphs, spatial indexing like KD-trees, R-trees).
- Familiarity with numerical methods and precision handling in geometric computations.
- Knowledge of multithreading, parallel computing, and optimization techniques.
- Experience with libraries such as CGAL (Computational Geometry Algorithms Library), Boost.Geometry, or similar.
- Strong debugging and problem-solving skills.
- Bachelor’s/Master’s degree in Computer Science, Mathematics, or related field.
Technical Skills Required:
- A graduate in computers or Engineering from a reputed university.
- Hands-on experience in Microsoft C#.Net technology.
- Hands-on experience in C#, WPF, MVVM architecture
- Knowledge of TCP/IP socket programming is a plus
- Strong in OOPs concept & SQL Server.
- Windows desktop application, Dot Net, C#, Entity Framework, WPF, XAML, Unity3D.
- Building structural and architectural domain knowledge, Automobile domain knowledge
- Microsoft certification on Azure (blob storage)
- Fair understanding of HTML, CSS, Web Application, Windows Store App, Design Patterns
Responsibilities:
- Participation in the requirements analysis, design, development and testing of applications.
- The candidate is expected to write code himself/herself.
- The candidate is expected to write high level code, code review, unit testing and deployment.
- Practical application of design principles with a focus on the user experience, usability, template designs, cross browser issues and client server concepts.
- Contributes to the development of project estimates, scheduling, and deliverables.
- Works closely with QA team to determine testing requirements to ensure full coverage and best quality of product.
- There is also the opportunity to mentor and guide junior team members in excelling their jobs.
Requirements:
- BE/B. Tech. Computer Science or MCA from a reputed University.
- 3.5 - 6.5 Years of experience in software development, with emphasis on JAVA/J2EE Server side programming.
- Hands on experience in Core Java, Multithreading, RMI, Socket programing, JDBC, NIO, webservices and Design patterns.
- Should have Knowledge of distributed system, distributed caching, messaging frameworks ESB etc.
- Knowledge of Linux operating system and PostgreSQL/MySQL/MongoDB/Cassandra database is essential.
- Additionally, knowledge of HBase, Hadoop and Hive are desirable.
- Familiarity with message queue systems and AMQP and Kafka is desirable.
- Should have experience as a participant in Agile methodologies.
- Should have excellent written and verbal communication skills and presentation skills.
Good Programming Skills in C, C++, C#/Java, (good to have)
- Exposure to Scripting Languages like Ruby, Python
- Knowledge in version control- Git and/or Subversion
- Exposure to debugging tools like gdb, valgrind
- IDE tools like Eclipse
- Exposure to network programming with TCP, UDP
- Good debugging skills
- Exposure to Multi-threaded programming
- Strong knowledge in Data Structures & Algorithms
Experience:
The candidate should have about 2+ years of experience with design and development in Java/Scala. Experience in algorithm, data-structure, database and distributed System is mandatory.
Required Skills:
Mandatory: -
- Core Java or Scala
- Experience in Big Data, Spark
- Extensive experience in developing spark job. Should possess good Oops knowledge and be aware of enterprise application design patterns.
- Should have the ability to analyze, design, develop and test complexity of spark job.
- Working knowledge of Unix/Linux.
- Hands on experience in Spark, creating RDD, applying operation - transformation-action
Good To have: -
- Python
- Spark streaming
- Py Spark
- Azure/AWS Cloud Knowledge of Data Storage and Compute side
Work as a member of a team responsible for problem resolutions requiring extensive analysis, troubleshooting to product development. You will apply your knowledge of building scalable, distributed applications to provide ideal solutions to solving our clients business problems by driving customer experience outcomes with enhanced technical capabilities. Essential Functions include, but are not limited to the following.
You will be expected to:
- Work closely with a team of highly technical engineers distributed geographically.
- Contribute to all phases in the software lifecycle requirements analysis, solution design, development, and delivery
- Build high quality, efficient & reusable code in server-side programming.
- Troubleshoot & debug applications/products
- Ensure assigned projects are developed in accordance with established engineering processes, adhering to scope, schedule constraints and agile project plans
- Guide/mentor the less experienced team members
- Participate in code reviews
- Document and test the features worked on by you or team
- Explore & Propose to incorporate cutting-edge technologies / plugins etc to improve applications
- In addition, position is responsible for a variety of complex Linux, SQL, networking and coding challenges.
Must Have Skills:
- Strong programming skills in C/C++, Knowledge of PHP would be advantageous.
- Experience in Networking software development and Domain Knowledge
- Experience working with Linux
- Good Understanding of Databases (MySQL) and proficiency in SQL Queries.
Good to Have Skills:
- Knowledge of RESTful APIs
- Exposure to DevOPS practices, Continuous Integration (CI/CD), Containers (Docker).
- Experience with Spark Structured Streaming API, MySQL performance optimization, Linux Kernel experience
- Exposure to Test Driven Development

Roles and Responsibilities
- Talented software developers to deliver high-quality web-based business applications
- Get a solid understanding of both the functional and technical specifications of the module \ task of the current assignment and have full consent before starting the development.
- Follow proper coding standards, application architecture guidelines and procedural guidelines as explained by the respective team lead.
- Maintain the time sheet on a daily basis clearly filling the actual effort against the estimated effort. And any unplanned activities, scope creeps, unaccomplished tasks or additional guidance requirements should be immediate brought to the notice of Team Lead/Project manager/ VP.
- Will be responsible for doing a thorough unit testing before and after their respective code components is being integrated into peer codes or main application.
- Post integration release they would be responsible for resolving the TFS issues being assigned to them.
- Demonstrated ability to adapt and learn new technologies.
- Provide recommendations for continuous improvement.
Desired Candidate Profile
- Minimum 2 Years of experience in .Net technologies
- Build new Web-based systems with C# .NET, ASP.NET
- Experience in Angular 2+, JQuery, Entity Framework are preferred
- Good experience in OOPS concepts, MVC Frame work, Web API, WCF / Remoting
- Strong experience in designing and working with scalable architectures
- The ability to quickly learn new concepts and software is necessary
- Having Experience in build, publish and deploying applications using various tools
- Should have experience of all aspects of Software Development Life Cycle or Agile
- Excellent problem solver, able to assimilate formation quickly
- Excellent communication skills, oral and written
- Technical expertise: Demonstrates knowledge and experience in .net development
- Strong team player; work effectively in groups; and help others to get the job done
- Decision making: ability to analyze, integrate, evaluate and make decisions
- Motivation: Establish and communicate vision. Demonstrate enthusiasm and excitement toward achieving project goals
- High quality standards: accuracy, proficient and thoroughness in unit testing
- Time Management: Completes work in a timely manner to meet production deadlines
- Organizational skills: Ability to establish priorities for projects to meet goals
Education among below
- Diploma
- BCA
- MCA
- B Eng
- M Eng
- B Tech
- M Tech
- E CE/IT









