About Civil Maps
At Civil Maps, we believe that efficient, safe mobility can revolutionize the way we live and interact with the world around us. To reach this future, we provide autonomous vehicles with cognition, enabling them to crowdsource 3D maps and make better decisions for safe driving. Our first milestones include providing real-time, localization in six dimensions and producing augmented reality maps, to be used by AVs and humans. Our process of questioning established methods and our artificial intelligence expertise allow us to define the mobility solutions of the future.
Civil Maps' resources are augmented through its partnerships with the leading geospatial, governmental and academic institutions including U.S. Department of Energy, National Energy Research Scientific Computing Center, Verizon Innovation Program, University of California Berkeley and Stanford University.
At least 2 years of experience as a Node.js developer.
Knowledge of front-end technologies such as HTML5 and CSS3.
Developing and maintaining all server-side network components.
Ensuring optimal performance of the central database and responsiveness to front-end requests.
Collaborating with front-end developers on the integration of elements.
Designing customer-facing UI and back-end services for various business processes.
Developing high-performance applications by writing testable, reusable, and efficient code.
Implementing effective security protocols, data protection measures, and storage solutions.
We are looking for an analytical, results-driven Back-end Developer who works with team members and to lead them to troubleshoot and improve current back-end applications and processes. The Back-end Developer uses his or her understanding of programming languages and tools to analyze current codes and industry developments, formulate more efficient operations, solve problems, and create a more seamless experience for users. You are responsible for integrating with the front-end elements built by your coworkers into the application. A fundamental understanding of front-end technologies is therefore necessary as well.
• Collaborate with the front-end developers and other team members to establish objectives and design more functional, cohesive codes to enhance the user experience.
• Compile and analyze data, processes, and codes to troubleshoot problems and identify areas for improvement.
• Develop ideas for new programs, products, or features by monitoring industry developments and trends.
• Recording data and reporting it to proper parties, such as clients or leadership.
• Participating in continuing education and training to remain current on best practices, learn new programming languages, and better assist other team members.
• Take the lead on projects, as needed.
• Minimum 3+ years of overall software development experience is essential.
• Multi-platform experience is an add-on and expert level experience with business and technical applications.
• Demonstrated leadership skills in both business and IT context to drive teams to achieve results.
• Hands-on experience in, Node JS, Golang, Micro Services, Kafka, Spring Boot Experience with Relational Database (Postgress), NoSQL (Elasticsearch, MongoDB, Cassandra).
• Good understanding of different microservices principles, patterns, anti-patterns best practices.
• Good understanding of Data structures and Algorithms, time and space complexity analysis.
• Good understanding of various modules, packaging, designing of callbacks, and more.
• Experience in containerization and container orchestration tools like Kubernetes
• Experience in identifying designing business events, orchestration choreography streaming of business events through Kafka, integration of Nodejs with Kafka.
• Good understanding of AWS services like Application load balancers, Security groups, S3 buckets, availability zones, security best practices to be followed, cloud formation templates, DevOps with AWS.
• Excellent teamwork and communication skills, familiarity with agile development methodologies.
• Good to have additional knowledge on Spring cloud frameworks like Spring cloud gateway, spring cloud Eureka, Hystrix, Spring Security OAuth, Spring Config.
• Experience in using JSON payloads and REST APIs.
• Should have Experience in building highly secure APIs and web applications.
• Strong unit test and debugging skills.
- Design and develop highly scalable, reliable, and fault-tolerant systems and scalable application components and perform system designs within the scope of the team to fulfil both functional and non-functional
- Build the connecting components that integrates with any 3rd party
application for customers as well as for internal purposes
- Interface with the backend team to build requisite APIs for integration
- Build test plans and implement a vigorous testing process
- Be involved in strategic decisions involving both front-end and back-end development
- Be ready to wear multiple hats as the requirement changes on time to time
- Involve in all decisions related to Application architecture and component development
- Proactively manage stakeholder communication (external and internal)
related to deliverables, risks, changes, and dependencies
- At least 5 years of relevant experience. Hands on in any object oriented
or functional programming language i.e. Python, Ruby etc
- Commanding knowledge in HTML, CSSS, JS frameworks – React.js,Angular,
- Experience in writing modular code following architectural patterns and have a deep understanding of front-end architecture and data-driven development
- Ability to work with designers to develop dynamic user experiences
- Experience designing and building production-level web applications
- Excellent debugging skills; able to debug complex technical issues
involving multiple system components.
- Experience with various architectural evolutions, identifying systemic
bottlenecks and optimizing for performance
- Problem solving capability and strong analytical thinking on complex business use cases
- Able to have a strong impact while working independently or in a team
- Able to lead the engineering team and Effectively mentor team members
to help them unleash their full potential
- Hands on experience in AWS devops and basic knowledge of cloud infra architecture
And if you've got some of these skills, even better:
- Hands on experience working with or building e-commerce products or platforms
- Experience monitoring and operating a production-level service
- Excitement about the latest trends in application design
- Experience with agile software development methodologies like Kanban or Scrum
- Experience in integration projects including Microsoft ERP (AX Dynamics) is a plus
Desired Experience and Skills
- Education: BTech/BE/Masters
Location : Remote-Anywhere from India as permanent work from home option available
• Strong coding experience in Python and Flask Web Framework.
• Information retrieval – Web Scraping.
• Experience with NoSQL data storage like MongoDB.
• Good knowledge of Asynchronous task schedulers like Celery
• Experience working with large scale databases and storage.
• Knowledge of working with various front end technologies and how various websites are built. Sound understanding of Asynchronous Programming in python like AsyncIO
• BE/B. Tech. Computer Science or MCA from a reputed University.
• 8+ Years of experience in software development, with emphasis on JAVA/J2EE Server side
• 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
• Knowledge of Linux operating system and PostgreSQL/MySQL/MongoDB/Cassandra database is
• 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.
• This is not a Fullstack requirement, we are purely looking out for Backend resources.
- Participating in the design and creation of scalable software
- Writing clean, functional code on the front- and back-end
- Testing and fixing bugs or other coding issues