
We are looking for someone who:
- has 1+ years of professional software engineering experience.
- is familiar with the paradigms of functional programming
- is familiar with at least one FP language (Haskell, Scala, OCaml, etc.)
- has the ability to participate in entire product development life-cycle
- is self motivated to learn new technologies
- can play leadership role in terms of coming up with solutions

About ByteAlly
About
Connect with the team
Company social profiles
Similar jobs
Job Description :
Position Name : Haskell Developer
Experience : 3+ Years
Location : Gurgaon
Working Days : 6 Days (Monday to Saturday)
Role Description :
This is a full-time on-site role located in Gurugram for a Haskell Developer. The Haskell Developer will be responsible for the development and implementation of efficient, high-performance, and scalable software solutions, and will have the opportunity to work on cutting-edge blockchain-based projects in collaboration with cross-functional teams.
Qualifications :
• 3-5 Years of Haskell experience is required.
• 3-5 Years of Web3 experience is a plus.
• Worked on proven projects of Blockchain.
• Strong proficiency in Haskell, and experience with other functional programming languages.
• Experience with Cryptography, Blockchain, Consensus algorithm and Distributed Systems.
• Proven experience in web frameworks such as Servant, and with databases such as Level DB.
• Strong knowledge of Computer Science fundamentals such as Algorithms, Data Structures, and Complexity Analysis.
• Experience with software development methodologies, such as Agile or Scrum.
• Bachelor's degree or higher in Computer Science, or a related field.
• Excellent communication skills, and ability to work in a collaborative team environment.
• Passion for Blockchain and Cryptocurrency, and willingness to learn and explore new technologies.
Key Responsibilities
- Provide technical leadership in the design, development, and delivery of scalable, high-performance software systems.
- Partner with product managers, architects, and cross-functional teams to define technical strategy and ensure alignment with business objectives.
- Lead by example in writing high-quality, testable, and maintainable code.
- Drive best practices in software engineering, including code reviews, system design, and performance optimization.
- Mentor and guide engineers across teams, fostering a culture of technical excellence and continuous learning.
- Evaluate and introduce new technologies, tools, and frameworks to improve productivity, scale and system robustness.
Required Skills & Qualifications
- Strong foundation in computer science fundamentals: data structures, algorithms, and functional programming techniques.
- Expertise in Scala, with strong preference for functional programming.
- Solid experience in software design, implementation, and debugging, including inter-process communication and multi-threading.
- Hands-on experience with distributed systems and event-driven architectures.
- Familiarity with databases (Postgres preferred).
- Proficiency with Apache Kafka for messaging and persistence.
- Working knowledge of Python for unit and integration testing.
- Basic to intermediate experience with Ansible for automation.
- Strong problem-solving, analytical, and communication skills.
Nice-to-Have / Bonus Skills
- Experience with modeling in YANG.
- Experience with Scala libraries such as Cats Effect (2/3), Monix, and Akka.
- Experience working in Agile/Scrum environments.
What We Offer
- Opportunity to work on cutting-edge technologies in a collaborative environment.
- A role with strong ownership, technical influence, and visibility across teams.
- Competitive compensation and benefits.
- Bachelor's or Master’s degree in Computer Science or equivalent area
- 10 to 20 years of experience in software development
- Hands-on experience designing and building B2B or B2C products
- 3+ years architecting SaaS/Web based customer facing products, leading engineering teams as software/technical architect
- Experiences of engineering practices such as code refactoring, microservices, design and enterprise integration patterns, test and design-driven development, continuous integration, building highly scalable applications, application and infrastructure security
- Strong cloud infrastructure experience with AWS and/or Azure
- Experience building event driven systems and working with message queues/topics
- Broad working experience across multiple programming languages and frameworks with in-depth experience in one or more of the following: .Net, Java, Scala or Go-lang
- Hands-on experience with relational databases like SQL Server, PostgreSQL and document stores like Elasticsearch or MongoDB
- Hands-on experience with Big Data processing technologies like Hadoop/Spark is a plus
- Hands-on experience with container technologies like Docker, Kubernetes
- Knowledge of Agile software development process
- Augmenting, improving, redesigning, and/or re-implementing Dolat's low-latency/high-throughput production trading environment, which collects data from and disseminates orders to exchanges around the world
- Optimizing this platform by using network and systems programming, as well as other advanced techniques
- Developing systems that provide easy access to historical market data and trading simulations
- Building risk-management and performance-tracking tools
- Shaping the future of Dolat through regular interviewing and infrequent campus recruiting trips
- Implementing domain-optimized data structures
- Learn and internalize the theories behind current trading system
- Participate in the design, architecture and implementation of automated trading systems
- Take ownership of system from design through implementation
- Identify bad code practices in Scala 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 Scala and Java.
- Understanding of the nuances of execution of the source code (AST, data flow graphs, etc).
- Familiarity with Scala best practices followed in the industry.
- Native experience with Linux/Unix environment.
- A focus on delivering high-quality code through strong testing practices.

Basic Qualifications
Candidates for this role must have:
- Bachelor’s degree in computer science or a related field
- At least three years of experience writing production code of increasing complexity
- Strong understanding of computer science fundamentals, including algorithms, complexity analysis, data structures, problem solving, and object-oriented analysis and design
- Proficiency in at least one of the following: Java, C, C++, C#, Ruby, Scala, Python
- Experience refactoring code and evolving architectures
- Experience crafting unit, integration, functional and regression tests
Preferred Qualifications
- Master’s degree in computer science or a related field
- Experience developing in a Linux environment
- Experience applying service-oriented architecture techniques to production use cases
- Experience in developing secure, multi-platform mobile applications
Work Location: Indira Nagar, Bangalore
Work Days: Sunday to Thursday OR Monday to Friday
Shift: Day Time
Week Off: Friday & Saturday OR Saturday & Sunday
JD:
Development of applications in Java including:
Building data processing platforms.
Developing micro service-oriented applications (Mandatory).
Interact with stakeholders of the applications being developed.
Desired Candidate Profile:
Must have experience in Java JEE, Spring Framework, Microservices (Mandator)
Experience in SQL and JDBC
Experience in build tools Maven, git
Experience in Cloud Platforms AWS, Azure is a plus.
EXP-Developer-4 to 12 years
Must have low-level design and development skills. Should able to design a solution for given use cases.
- Agile delivery- Person must able to show design and code on a daily basis
- Must be an experienced PySpark developer and Scala coding. Primary skill is PySpark
- Must have experience in designing job orchestration, sequence, metadata design, Audit trail, dynamic parameter passing and error/exception handling
- Good experience with unit, integration and UAT support
- Able to design and code reusable components and functions
- Should able to review design, code & provide review comments with justification
- Zeal to learn new tool/technologies and adoption
- Good to have experience with Devops and CICD
Job description
We are looking for a passionate Software Development Engineer to develop, test, maintain and document program code in accordance with user requirements and system technical specifications. As a Software Development Engineer, you will work with other Developers and Product Managers throughout the software development life cycle.
Software Development Engineer responsibilities include analysing requirements, define system functionality and writing code in the companys current technology stack. The candidate is expected to be familiar with the software development life cycle (SDLC) process from preliminary system analysis to tests and deployment. Ultimately, the role of the Software Engineer is to build high-quality, innovative and fully performing software that complies with coding standards and technical design. Your goal will be to build efficient programs and systems that serve user needs.
To be qualified for this role, you should hold a minimum of Bachelor’s degree in a relevant field, like Computer Science, IT or Software Engineering. You should be a team player with a keen eye for detailed and problem-solving skills. If you also have experience in SDLC, Agile frameworks and popular coding languages (e.g., Java), strong computer science fundamentals we’d like to meet you.
Years of experience : 2 to 10 years.
Roles & Responsibilities
The overview of this position (based in Chennai, India) includes:
- Develops, enhances, debugs, supports, maintains and tests software applications that support business units or supporting functions. These application program solutions may involve diverse development platforms, software, hardware, technologies and tools.
- Participates in the design, development and implementation of complex applications, often using new technologies.
- Technology professional with experience in designing and managing the implementation of future looking, flexible and reusable, enterprise applications and components.
- Expert in translating business requirements into an application design that includes Data Model, Web Screens, Web Services, and batch processing.
- May provide technical direction and system architecture for individual initiatives.
- Serves as a fully seasoned/proficient technical resource.
- Deploy programs, gather and evaluate user feedback
- Recommend and execute improvements
- Create technical documentation for reference and reporting
- Develop software verification plans and quality assurance procedures
- Document and maintain software functionality
- Ensure software is updated with latest features
- Good interpersonal and technology understanding skills
- Evaluate open-source components and integrate into product pipeline
Skills and Qualifications
- Hands-on experience in analysis, design, coding, and implementation of complex, custom-built applications.
- Strong Java, development skills (JAVA, J2EE, STRUTS, SPRING, Web Services, Eclipse, UI screens, AngularJS, React.JS)
- Excellent debugging skills
- Strong knowledge on databases (MySQL, MSSQL Server and NoSQL databases)
- Understanding of various deployment servers (Apache Tomcat is a must)
- Understanding of OO skills, including strong design patterns knowledge is a must.
- Strong understanding in creating and maintaining web services.
- Understanding of the software development life cycle
- Experience with Implementation and release management activities
- Good understanding of unit/system and functional testing methodology
- Experience working in large transaction-based systems
- Knowledge of software best practices, like Test-Driven Development (TDD) and Continuous Integration (CI)
- Experience documenting technical functions
- Desire to contribute to the wider technical community through collaboration, coaching, and mentoring of other technologists.
- Experience in Linux based systems, development of shell-based scripts.
Job Training
- Training on the coding paradigms, guidelines, frameworks, usage of the applications would be provided by the engineers
- Periodic training sessions would be conducted by the technical architects in terms of technology and skills to be learnt
- Periodic, structured training would be provided on the applications Hours & Environment
- Typical 40 hours of work a week
- Depending on the requirements, work hours may have to be extended during the day, weekend









