DeepSource is working on building tools that help developers ship good code. There are over 40 million developers in the world, and all of them write and review code in some form. The Language Engineering team works on the source code analyzers, including both programming languages and configuration-as-code systems. As a member of the Language Engineering team, you will work on building the best, most comprehensive, Ruby analyzer in the world. You will add new rules and Autofixes for finding more issues with code and automatically fixing them. You will be involved with the community to understand the problems with static analysis tools in the Ruby ecosystem.
As a member of the Language Engineering team, you will:
-
Identify bad code practices in Ruby and write new analyzers to detect them.
-
Improve the coverage of automatically fixable issues.
-
Ensure fewer false-positives are reported by the analyzer.
-
Work on the internal tools that support analysis runtimes.
-
Contribute to open-source static analysis tools.
We’re looking for someone who has:
-
Strong foundational knowledge in Computer Science.
-
At least 3 years of professional software development experience in Ruby.
-
Understanding of the nuances of execution of the source code (AST, data flow graphs, etc).
-
Familiarity with Ruby best practices followed in the industry.
-
Native experience with Linux/Unix environment.
-
A focus on delivering high-quality code through strong testing practices.
We offer competitive compensation with meaningful stock options, a generous vacation policy, and a workstation of your choice, to name a few of the perks.
About DeepSource
About
Connect with the team
Similar jobs
Egnyte is seeking an experienced Sr. Software Engineer to join our Software Engineering (Infrastructure) group. The Software Engineering (Infrastructure) group builds large distributed components and services that run Egnyte’s Cloud Platform. Our code serves billions of requests per day with sub-second latency in a fault-tolerant environment. Some of the responsibilities for this group include Egnyte’s Cloud File System, Object Store, Metadata Stores, Search Systems, Recommendations Systems, Synchronization, and intelligent caching of multi-petabyte datasets. We are looking for candidates with a shared passion for building large-scale distributed systems and a keen sense for tackling complexities that come with scaling through multiple orders of magnitude.
What You’ll Do (but is not limited to)
- Design and develop highly-scalable elastic cloud architecture that seamlessly integrates with on-premises systems
- Challenge and redefine existing architectural fundamentals in order to provide next level of performance and scalability; ability to foresee post-deployment design challenges, performance and scale bottlenecks
- Work with multicultural, geographically distributed teams and closely coordinate with cross-functional teams in multiple time zones.
- Deliver enterprise-grade products to customers and continuously work with engineering team to refine products in the field
- Mentor interns and junior engineers, collaborate with Operations, and work closely with CTO on roadmap items
- Extensive penetration testing to ensure security across a hybrid deployment between public/private cloud
- Monitor and manage 3,000+ nodes using modern DevOps tools and APM solutions
- Proactive performance and exception analysis
Your Qualifications
- 5+ years of relevant industry work Experience
- Demonstrated success designing and developing complex systems
- Expertise with multi-tenant, highly complex, cloud solutions
- Experience owning all aspects of software engineering, from design to implementation, QA and maintenance.
- Experience with the following technologies: Java, SQL, Linux, Python, HBase/BigTable
- Data driven decision process
- Relies on unit testing instead of manual QA
- Knowledge of DevOps techniques
- BS or MS degree in Computer Science or related field
Bonus Skills
- Experience with Hybrid and/or on-premises solutions
- Experience in working with AWS or GCP
- Experience with the following technologies:, Nginx, Haproxy, BigQuery, New Relic, Graphite, and/or Puppet
- Security / Governance expertise
About Egnyte
In a content critical age, Egnyte fuels business growth by enabling content-rich business processes, while also providing organizations with visibility and control over their content assets. Egnyte’s cloud-native content services platform leverages the industry’s leading content intelligence engine to deliver a simple, secure, and vendor-neutral foundation for managing enterprise content across business applications and storage repositories. More than 16,000 customers trust Egnyte to enhance employee productivity, automate data management, and reduce file-sharing cost and complexity. Investors include Google Ventures, Kleiner Perkins, Caufield & Byers, and Goldman Sachs. For more information, visithttp://www.egnyte.com/"> http://www.egnyte.com/">www.egnyte.com
We prefer candidates who can attend a walk-in interview and join immediately.
Job Description: Senior Java Developer with Leadership Experience
Position: Lead Developer
Experience: 5-8 Years
Location: Noida
Job Type: Full-time
Overview:
We are seeking a highly skilled and experienced Senior Java Developer to join our dynamic team. The ideal candidate will have a minimum of 5 years of experience in Java development, with a strong focus on leadership and team management. This role requires a proactive individual who can guide others, provide instant solutions, and ensure the successful completion of technical projects.
Key Responsibilities:
- Team Leadership: Lead, mentor, and manage a team of Java developers, fostering a collaborative and productive work environment.
- Project Management: Oversee the planning, execution, and delivery of projects, ensuring they are completed on time and within budget.
- Technical Guidance: Provide expert guidance on Java, JSP, Servlets, Spring Boot, and Hibernate, ensuring best practices and high-quality code standards.
- Problem Solving: Quickly identify, analyze, and resolve technical issues, providing instant and effective solutions.
- Code Review: Conduct regular code reviews to maintain code quality, performance, and security.
- Server Management: Manage server configurations, deployments, and troubleshooting to ensure optimal performance and uptime.
- Collaboration: Work closely with cross-functional teams, including QA, DevOps, and Product Management, to align development activities with business goals.
- Continuous Improvement: Stay updated with the latest industry trends and technologies, and continuously improve development processes and practices.
- Documentation: Ensure comprehensive documentation of all technical specifications, project plans, and procedures.
Qualifications:
- Education: Bachelor’s degree in Computer Science (tier 1/2), Information Technology, or a related field.
- Experience: Minimum of 5 years of hands-on experience in Java development, Minimum 1 year experience in leading Team
Technical Skills:
- Proficiency in Java, JSP, Servlets, Spring Boot, and Hibernate.
- Strong understanding of server-side technologies and server management.
- Experience with version control systems like Git.
- Familiarity with database management systems, particularly SQL.
- Fluency in English
- Leadership Skills: Proven experience in leading and managing development teams.
- Problem-Solving Skills: Strong analytical and problem-solving abilities.
- Communication Skills: Excellent verbal and written communication skills, with the ability to convey complex technical concepts to non-technical stakeholders.
Benefits:
● Provident Fund
Schedule:
● Day shift
● Fixed shift
● Monday to Friday
● Morning shift
ROR
1-2 years of experience working with Ruby on rails as well as libraries like Resque and RSpec.
Good experience with Redis, Sidekiq, and Docker.
Ability to write clean ruby code.
Proficiency with code versioning tools including Git, Github, Gitlab, and SVN.
Experience with AngularJS or React JS is a plus.
Familiarity with MVC, Mocking, RESTful, and ORM.
Good understanding of front-end technologies including HTML5, JavaScript, Jquery, and CSS3.
Knowledge of server-side templating languages including Slim, Haml, and ERB.
Familiarity with tools like Jira, Postman, Slack, and Microsoft Teams.
Roles and Responsibilities
• Ability to create solution prototype and conduct proof of concept of new tools.
• Work in research and understanding of new tools and areas.
• Clearly articulate pros and cons of various technologies/platforms and perform
detailed analysis of business problems and technical environments to derive a
solution.
• Optimisation of the application for maximum speed and scalability.
• Work on feature development and bug fixing.
Technical skills
• Must have knowledge of the networking in Linux, and basics of computer networks in
general.
• Must have intermediate/advanced knowledge of one programming language,
preferably Python.
• Must have experience of writing shell scripts and configuration files.
• Should be proficient in bash.
• Should have excellent Linux administration capabilities.
• Working experience of SCM. Git is preferred.
• Knowledge of build and CI-CD tools, like Jenkins, Bamboo etc is a plus.
• Understanding of Architecture of OpenStack/Kubernetes is a plus.
• Code contributed to OpenStack/Kubernetes community will be a plus.
• Data Center network troubleshooting will be a plus.
• Understanding of NFV and SDN domain will be a plus.
Soft skills
• Excellent verbal and written communications skills.
• Highly driven, positive attitude, team player, self-learning, self motivating and flexibility
• Strong customer focus - Decent Networking and relationship management
• Flair for creativity and innovation
• Strategic thinking This is an individual contributor role and will need client interaction on technical side.
Must have Skill - Linux, Networking, Python, Cloud
Additional Skills-OpenStack, Kubernetes, Shell, Java, Development
Job description
Ruby on Rails Developer Responsibilities :
- Designing and developing new web applications.
- Maintaining and troubleshooting existing web applications.
- Writing and maintaining reliable Ruby code.
- Integrating data storage solutions.
- Creating back-end components.
- Identifying and fixing bottlenecks and bugs.
- Integrating user-facing elements designed by the front-end team.
- Connecting applications with additional web servers.
- Maintaining APIs.
Ruby on Rails Developer Requirements :
- Bachelor's degree in Computer Science, Computer Engineering, or related field.
- Experience working with Ruby on Rails as well as libraries like Resque and RSpec.
- Ability to write clean Ruby code.
- Proficiency with code versioning tools including Git, Github, SVN, and Mercurial.
● You should be able to take ownership of a project end to end.
● Your primary focus will be to build, implement & maintain the complete back-end stack of the product.
● You will create production-grade code and will implement the solutions which run bug-free.
● Participate in product development discussions and product development road-maps.
● Collaborate with members across departments to identify and build on
improvements to products, processes, and systems.
Required Experience and Qualifications:
2 to 6 years of software development experience.
● Experience in working on application architecture design will be preferred.
● Experience in working on at least 1 or 2 projects, managing or leading the entire
tasks.
● Experience in Docker/Kubernetes, Agile methodologies & CI/CD automation process.
● Knowledge of Queueing technologies like Kafka, RabbitMQ, ActiveMQ, and Version control using Git.
● Experience in microservices architecture, in-memory systems like Redis and basic knowledge of Linux/Unix systems.
● Experience in building applications processing large volumes of streaming data will be preferred.
● Experience from a middle size company or from a startup will be preferred.
● BE/MCA/MSc in Computers/Information technology with a good academic record.
Responsibilities:
- Hand on experience in Golang/Python/Ruby on Rails /Node.Js
- Must have at least 1+ years of experience in Team Handling
the core library/language constructs.
• Knowledge of processor, memory, network and storage internals. Familiarity with I/O optimized
algorithms.
• Deep understanding of distributed systems including fault modeling, concurrency, isolation,
consensus etc.
• Internals of a RDBMS like MySQL
• Conversant with the internals of systems like Kafka, Cassandra/Scylla, Redis, RocksDB etc
• Working knowledge of hosting and network infrastructure (K8s, Envoy, etc)
• Familiarity with binary serialization protocols like thrift/protobuf/flatbuffers etc
• Familiar with gRPC, HTTP/2, QUIC, etc.
• Troubleshooting memory issues, GC tuning, resource leaks etc.
• Strong problem-solving skills, algorithmic skills and data structures.
• Productionizing machine learning pipelines using Spark/Flink/TensorFlow etc
• Familiarity with big data concepts - HDFS, hive, presto, spark, oozie, ambari, airflow, atlas,
ranger, etc. Familiarity with formats like avro, parquet, orc, arrow etc
• Good understanding of branching, build, deployment, continuous integration methodologies
• Experience in leading a team and mentoring engineers
• Attitude to get Stuff Done!
• Ability to make decisions independently.
Desired Background:
• Bachelor’s or Master’s degree in Engineering from premier institutes preferred
• 8+ years of experience in software design, development & architecture
Good knowledge and experience of working with backend systems;
designing server-side architecture, including production maintenance experience are must-haves.
At least 1-2 years of experience in any programming languages like Java, Ruby, PHP, Python and Node.js(Node.js preferred).
Understanding of micro-services oriented architecture.
Experience with Databases design (SQL, NoSQL) and analytics
Experience in driving and delivering complex features/software modules from technical design to launch.
Expertise with unit testing & Test Driven Development (TDD)